Function at 0x423d90
Capabilities:
Prepare http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4716af
mov eax, dword fs:[0]
push eax
sub esp, 0xdc
mov eax, dword [0x485c44]
xor eax, ebp
mov dword [ebp - 0x14], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xd4], ecx
mov byte [ebp - 0xd], 0
mov ecx, dword [ebp - 0xd4]
call fcn.00424150
push 2
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x1a4]
call fcn.0041ff30
movzx ecx, al
test ecx, ecx
jne 0x423dff
mov edx, dword [ebp - 0xd4]
mov dword [edx + 0x114], 2
jmp 0x424126
push 0
push 0
lea ecx, [ebp - 0x30]
call fcn.0040d8a0
mov eax, dword [0x4764d8]
push eax
push 0
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x30]
call fcn.0040da60
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0xd4]
xor eax, eax
cmp dword [edx + 0x28], 0
sete al
movzx ecx, al
test ecx, ecx
jne 0x423e52
lea edx, [ebp - 0x30]
push edx
mov ecx, dword [ebp - 0xd4]
call fcn.00422260
movzx eax, al
test eax, eax
jne 0x423e67
mov ecx, dword [ebp - 0xd4]
mov dword [ecx + 0x114], 0x57
jmp 0x424113
mov ecx, dword [ebp - 0xd4]
call fcn.00423910
movzx edx, al
test edx, edx
je 0x424113
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x1a0]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0x19c]
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0x198]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 0x194]
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
push 0
push 0x10000
push 0x4241b0
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.WINHTTP.dll_WinHttpSetStatusCallback]
lea eax, [ebp - 0x81]
mov dword [ebp - 0x80], eax
push 0
push 0
lea ecx, [ebp - 0x70]
call fcn.0040d8a0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x8d]
mov dword [ebp - 0x8c], ecx
push 0
push 0
lea ecx, [ebp - 0x54]
call fcn.0040d8a0
mov byte [ebp - 4], 2
lea edx, [ebp - 0x35]
push edx
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x70]
push edx
sub esp, 0x1c
mov eax, esp
mov dword [ebp - 0x78], esp
mov dword [ebp - 0x94], eax
push 0
push 0
mov ecx, dword [ebp - 0x94]
call fcn.0040d8a0
mov ecx, dword [0x4764d8]
push ecx
push 0
mov edx, dword [ebp - 0xd4]
add edx, 0x14
push edx
mov ecx, dword [ebp - 0x94]
call fcn.0040da60
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0xd4]
call fcn.00423ae0
mov byte [ebp - 0xd9], al
movzx ecx, byte [ebp - 0xd9]
test ecx, ecx
je 0x4240f3
cmp dword [ebp - 0x58], 8
jb 0x423f9a
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0xe0], edx
jmp 0x423fa3
lea eax, [ebp - 0x6c]
mov dword [ebp - 0xe0], eax
push 0
movzx ecx, word [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0xe0]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov edx, dword [ebp - 0xd4]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0xd4]
cmp dword [eax + 8], 0
je 0x4240e0
movzx ecx, byte [ebp - 0x35]
neg ecx
sbb ecx, ecx
and ecx, 0x800000
mov dword [ebp - 0x74], ecx
cmp dword [ebp - 0x3c], 8
jb 0x423ffc
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xe4], edx
jmp 0x424005
lea eax, [ebp - 0x50]
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0x18], 8
jb 0x424016
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0xe8], ecx
jmp 0x42401f
lea edx, [ebp - 0x2c]
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0x74]
push eax
push 0
push 0
push 0
mov ecx, dword [ebp - 0xe4]
push ecx
mov edx, dword [ebp - 0xe8]
push edx
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov edx, dword [ebp - 0xd4]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 0xd4]
cmp dword [eax + 0xc], 0
je 0x4240e0
mov ecx, dword [ebp - 0xd4]
movzx edx, byte [ecx + 0x10]
test edx, edx
jne 0x42408b
movzx eax, byte [ebp - 0x35]
test eax, eax
je 0x42408b
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, dword [ebp - 0xd4]
call fcn.00422380
mov eax, dword [ebp - 0xd4]
add eax, 0xdc
push eax
mov ecx, dword [ebp - 0xd4]
mov edx, dword [ecx + 0xc]
push edx
mov ecx, dword [ebp - 0xd4]
call fcn.004239c0
movzx eax, al
test eax, eax
je 0x4240e0
mov ecx, dword [ebp - 0xd4]
add ecx, 0xb8
push ecx
mov edx, dword [ebp - 0xd4]
mov eax, dword [edx + 0xc]
push eax
mov ecx, dword [ebp - 0xd4]
call fcn.00423a40
movzx ecx, al
test ecx, ecx
je 0x4240e0
mov byte [ebp - 0xd], 1
movzx edx, byte [ebp - 0xd]
test edx, edx
jne 0x4240f3
mov ecx, dword [ebp - 0xd4]
call fcn.00424150
mov byte [ebp - 4], 1
push 0
push 1
lea ecx, [ebp - 0x54]
call fcn.0040d8a0
mov byte [ebp - 4], 0
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.0040d8a0
mov dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0x30]
call fcn.0040d8a0
mov al, byte [ebp - 0xd]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00458357
mov esp, ebp
pop ebp
ret 4