Function at 0x100072c0
Capabilities:
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push 0xffffffffffffffff
push 0x10111c8b
mov eax, dword fs:[0]
push eax
mov eax, 0x74ec
call fcn.100b4600
mov eax, dword [0x102ac760]
xor eax, esp
mov dword [esp + 0x74e8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x102ac760]
xor eax, esp
push eax
lea eax, [esp + 0x7500]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 4]
cmp eax, 0xc
ja case.0x1000730d.8
jmp dword [eax*4 + 0x10007a80]
mov dword [esi + 4], 2
call fcn.10007bf0
neg eax
sbb eax, eax
and eax, 0xfffffffc
add eax, 4
jmp 0x100076d4
mov eax, dword [esi + 0x5478]
xor ebx, ebx
cmp eax, ebx
je 0x10007348
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [esi + 0x5478], ebx
movzx eax, byte [esi + 0x5518]
neg eax
sbb eax, eax
and eax, 9
add eax, 3
mov dword [esi + 4], eax
mov edi, 0x8408c300
cmp byte [esi + 0x553c], bl
je 0x1000736e
mov edi, 0x8428c300
mov ebp, 4
cmp dword [esi + 0x2018], ebp
jne 0x10007381
or edi, 0x803180
mov ecx, dword [esi + 0x5474]
push ecx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
lea edx, [esi + 0x281c]
push edx
lea ecx, [esp + 0x28]
call fcn.10002e70
lea eax, [esi + 0x342c]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x750c], ebx
call fcn.100089a0
mov eax, str.POST
cmp byte [esi + 0x5518], bl
jne 0x100073c7
mov eax, 0x10286598
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0xc]
push esi
push edi
push ebx
push ebx
push str.HTTP_1.0
push ecx
push eax
push edx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov dword [esi + 0x10], eax
cmp eax, ebx
je 0x10007536
xor eax, eax
push 0x208e
lea ecx, [esp + 0x5472]
push ebx
push ecx
mov dword [esp + 0x38], 0x28
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov word [esp + 0x5478], ax
call fcn.100b2d30
add esp, 0xc
push esi
lea ecx, [esp + 0x5470]
call fcn.10007d60
lea edx, [esp + 0x546c]
mov eax, edx
mov dword [esp + 0x34], edx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10007454
mov ecx, dword [esi + 0x10]
mov edi, dword [sym.imp.WININET.dll_InternetSetOptionW]
sub eax, edx
sar eax, 1
push ebp
mov dword [esp + 0x3c], eax
lea eax, [esp + 0x20]
push eax
push 5
push ecx
mov dword [esp + 0x2c], 0x7530
call edi
cmp dword [esi + 0x2018], ebp
jne 0x100074a1
mov eax, dword [esi + 0x10]
push ebp
lea edx, [esp + 0x18]
push edx
push 0x1f
push eax
mov dword [esp + 0x24], 0x803180
call edi
cmp dword [esi + 0x54e0], ebx
je 0x100074e3
cmp dword [esi + 0x54ec], ebx
je 0x100074e3
mov eax, dword [esi + 0x54f0]
mov ecx, dword [eax - 0xc]
mov edx, dword [esi + 0x10]
lea ecx, [ecx + ecx + 2]
push ecx
push eax
push 0x2b
push edx
call edi
test eax, eax
je 0x100074e3
mov eax, dword [esi + 0x54f4]
mov ecx, dword [eax - 0xc]
lea edx, [ecx + ecx + 2]
push edx
push eax
mov eax, dword [esi + 0x10]
push 0x2c
push eax
call edi
cmp byte [esi + 0x5518], bl
je 0x100074f5
mov ecx, dword [esi + 0x5510]
mov dword [esp + 0x48], ecx
mov eax, dword [esi + 0x10]
push esi
push 1
push ebx
lea edx, [esp + 0x38]
push edx
push eax
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
je 0x10007529
mov ecx, dword [esi + 0x5474]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
lea ecx, [esp + 0x24]
call fcn.10003610
xor eax, eax
jmp 0x100076d4
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
je 0x10007519
lea ecx, [esp + 0x24]
call fcn.10003610
mov eax, ebp
jmp 0x100076d4
cmp dword [esi + 0x5510], 0
mov dword [esi + 4], 3
jbe 0x10007522
mov edx, dword [esi + 0x5474]
push edx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
cmp dword [esi + 0x5514], 0x10
mov ecx, dword [esi + 0x5510]
mov dword [esp + 0x14], 0
jb 0x10007582
mov eax, dword [esi + 0x5500]
jmp 0x10007588
lea eax, [esi + 0x5500]
lea edx, [esp + 0x14]
push edx
push ecx
push eax
mov eax, dword [esi + 0x10]
push eax
call dword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
je 0x100075b1
mov ecx, dword [esi + 0x5474]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor eax, eax
jmp 0x100076d4
call dword [sym.imp.KERNEL32.dll_GetLastError]
sub eax, 0x3e5
neg eax
sbb eax, eax
and eax, 4
jmp 0x100076d4
mov edx, dword [esi + 0x5474]
mov ebp, 4
push edx
mov dword [esi + 4], ebp
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov eax, dword [esi + 0x10]
push 0
push 0
push 0
push eax
call dword [sym.imp.WININET.dll_HttpEndRequestW]
test eax, eax
je 0x10007605
mov ecx, dword [esi + 0x5474]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
xor eax, eax
jmp 0x100076d4
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
call esi
cmp eax, 0x3e5
je 0x10007522
call esi
mov eax, ebp
jmp 0x100076d4
xor ebx, ebx
mov dword [esi + 0x54d8], ebx
mov byte [esi + 0x54dc], bl
call fcn.10008560
mov eax, dword [esi + 0x54a4]
cmp eax, ebx
mov ebp, dword [esi + 0x5430]
mov ecx, dword [esi + 0x54a0]
jl 0x10007710
jg 0x10007658
cmp ecx, ebx
jbe 0x10007710
cmp dword [esi + 0x549c], ebx
jl 0x100076fc
jg 0x10007672
cmp dword [esi + 0x5498], ebx
jbe 0x100076fc
mov ecx, dword [esi + 0x10]
lea edx, [esp + 0x1c]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
push edx
lea ebx, [esp + 0x28]
lea edi, [esp + 0x18]
call fcn.10008850
mov eax, dword [esp + 0x14]
cmp eax, dword [esi + 0x5498]
jne case.0x1000730d.8
mov ecx, dword [esp + 0x18]
cmp ecx, dword [esi + 0x549c]
jne case.0x1000730d.8
mov edx, dword [esp + 0x1c]
cmp edx, dword [esi + 0x54a0]
jne case.0x1000730d.8
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x54a4]
je 0x1000770e
mov eax, 4
mov ecx, dword [esp + 0x7500]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x74e8]
xor ecx, esp
call fcn.100b2738
add esp, 0x74f8
ret
cmp ecx, dword [esi + 0x5438]
jne case.0x1000730d.8
cmp eax, dword [esi + 0x543c]
je 0x10007710
jmp case.0x1000730d.8
xor ebx, ebx
cmp dword [esi + 0x547c], ebx
jne 0x10007766
cmp ebp, 0xce
je 0x10007730
cmp ebp, 0xc8
je 0x10007730
cmp ebp, 0xc9
jne 0x10007766
mov edx, dword [esi + 0x10]
push 4
lea ecx, [esp + 0x18]
push ecx
push 6
push edx
mov dword [esi + 4], 5
mov dword [esp + 0x24], 0x7530
call dword [sym.imp.WININET.dll_InternetSetOptionW]
movzx eax, byte [esi + 0x553c]
neg eax
sbb eax, eax
and eax, 3
inc eax
jmp 0x100076d4
cmp ebp, 0x1f4
je 0x10007898
cmp ebp, ebx
je 0x10007898
cmp ebp, 0x190
je 0x10007898
cmp ebp, 0x12e
je 0x100077a2
cmp ebp, 0x12f
je 0x100077a2
cmp ebp, 0x12d
jne case.0x1000730d.8
mov eax, dword [esi + 0x54a8]
cmp eax, dword [esi + 0x54ac]
jge case.0x1000730d.8
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esi + 0x10]
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x5474]
push eax
push 0x21
push ecx
mov dword [esp + 0x30], 0x2000
mov dword [esp + 0x28], ebx
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je case.0x1000730d.8
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x5470]
push eax
call fcn.10005e00
add esp, 8
test eax, eax
je case.0x1000730d.8
cmp byte [esi + 0x553c], bl
je 0x10007861
mov edi, dword [esi + 0x5470]
cmp edi, ebx
je 0x10007861
lea eax, [esp + 0x54]
mov dword [esi + 0x545c], edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x10007822
sub eax, edx
sar eax, 1
add eax, eax
mov dword [esi + 0x5460], eax
add eax, 2
cmp eax, 0xfff
jb 0x10007848
mov eax, 0xfff
push eax
lea ecx, [esp + 0x58]
push ecx
push edi
call fcn.100f26b1
add esp, 0xc
mov eax, 3
jmp 0x100076d4
push 0x5418
lea edx, [esp + 0x58]
push edx
lea eax, [esi + 0x14]
push eax
call fcn.100b3c60
add esp, 0xc
push 1
call fcn.10007ac0
cmp eax, ebx
je 0x10007889
mov dword [esi + 4], 1
neg eax
sbb eax, eax
and eax, 0xfffffffc
add eax, 4
jmp 0x100076d4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 1
call fcn.10007ac0
neg eax
sbb eax, eax
and eax, 0xfffffffc
add eax, 4
jmp 0x100076d4
mov ecx, dword [esi + 0x5474]
push ecx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
xor eax, eax
lea ecx, [esi + 0x5448]
mov dword [esi + 4], 6
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], eax
mov dword [ecx + 0x20], eax
mov dword [ecx + 0x24], eax
mov edx, dword [esi + 0x5470]
mov eax, dword [esi + 0x5494]
xor ebx, ebx
cmp eax, ebx
mov dword [esi + 0x545c], edx
mov edx, dword [esi + 0x5490]
mov dword [ecx], 0x28
mov dword [esi + 0x5460], 0x1fff
jl 0x10007960
jg 0x1000791f
cmp edx, ebx
jbe 0x10007960
mov edi, dword [esi + 0x549c]
cmp edi, eax
mov ebp, dword [esi + 0x5498]
jl 0x10007939
jg 0x10007935
cmp ebp, edx
jbe 0x10007939
xor edx, edx
jmp 0x10007956
sub edx, ebp
sbb eax, edi
cmp eax, ebx
jg 0x10007951
jl 0x1000794b
cmp edx, 0x1fff
jae 0x10007951
mov dword [esp + 0x18], eax
jmp 0x1000795a
mov edx, 0x1fff
mov dword [esp + 0x18], ebx
mov dword [esi + 0x5460], edx
cmp dword [esi + 0x5460], ebx
je 0x100079a0
mov eax, dword [esi + 0x10]
push esi
push 8
push ecx
push eax
call dword [sym.imp.WININET.dll_InternetReadFileExA]
test eax, eax
jne 0x100079a0
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, 0x3e5
je 0x10007522
call edi
cmp dword [esi + 0x5460], ebx
jne case.0x1000730d.8
jmp 0x1000789e
mov ecx, dword [esi + 0x5470]
mov edx, dword [esi + 0x5460]
mov dword [esi + 4], 7
mov byte [ecx + edx], bl
mov eax, dword [esi + 0x5474]
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [esi + 0x5460]
cmp eax, ebx
jbe 0x100079eb
mov ecx, dword [esi + 0x5470]
mov dword [esi + 0x54d8], eax
mov dl, byte [ecx]
mov byte [esi + 0x54dc], dl
mov eax, 2
jmp 0x100076d4
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [esi + 0x5498]
mov edx, dword [esi + 0x549c]
cmp ecx, dword [esi + 0x5490]
jne 0x10007a11
cmp edx, dword [esi + 0x5494]
je 0x10007857
mov eax, dword [esi + 0x5438]
mov esi, dword [esi + 0x543c]
cmp eax, ecx
jne 0x10007a29
cmp esi, edx
je 0x10007857
or eax, esi
jne case.0x1000730d.8
or ecx, edx
jne 0x10007857
jmp case.0x1000730d.8
mov eax, dword [esi + 0x5460]
xor ecx, ecx
add dword [esi + 0x54b0], eax
adc dword [esi + 0x54b4], ecx
add dword [esi + 0x5498], eax
adc dword [esi + 0x549c], ecx
neg eax
sbb eax, eax
and eax, 0xfffffffd
add eax, 9
mov dword [esi + 4], eax
xor eax, eax
jmp 0x100076d4
mov eax, dword [esi]
mov edx, dword [eax + 8]
call edx
xor eax, eax
jmp 0x100076d4