Function at 0x4048b0
Capabilities:
Check http status code
Initialize winhttp library
Prepare http request
Read http header
Receive http response

Disassembly:
push ebp
mov edx, 0x4376a0
mov ebp, esp
push edi
push esi
lea esi, [ebp - 0x134]
push ebx
mov ebx, eax
sub esp, 0x190
test eax, eax
mov eax, 0x4378a0
mov dword [ebp - 0x138], esi
cmovne edx, eax
cmp ebx, 1
mov dword [ebp - 0x128], 0
mov edi, dword [sym.imp.kernel32.dll_CreateEventW]
sbb eax, eax
shl ebx, 0x1c
and eax, 0xfffffffc
mov dword [ebp - 0x130], edx
add eax, 0x2e
mov dword [ebp - 0x12c], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
mov dword [ebp - 0x124], eax
mov eax, dword [sym.imp.winhttp.dll_WinHttpOpen]
sub esp, 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x4361aa
mov dword [ebp - 0x17c], eax
call eax
sub esp, 0x14
mov ebx, eax
mov dword [ebp - 0x148], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x112
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [esp + 4], 0x4361bc
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
mov dword [ebp - 0x144], eax
sub esp, 0x10
lea eax, [ebp - 0x144]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.winhttp.dll_WinHttpSetOption]
mov dword [esp + 0xc], 4
mov dword [esp + 4], 0x63
mov dword [esp], ebx
mov dword [ebp - 0x154], eax
call eax
mov dword [ebp - 0x15c], eax
sub esp, 0x10
test eax, eax
je 0x405a50
mov dword [ebp - 0x15c], 1
mov dword [esp + 0xc], 0
mov eax, dword [sym.imp.winhttp.dll_WinHttpSetStatusCallback]
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0x402f30
mov edi, dword [ebp - 0x148]
mov dword [esp], edi
mov dword [ebp - 0x174], eax
call eax
lea eax, [ebp - 0x138]
sub esp, 0x10
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x2d
mov dword [ebp - 0x148], edi
mov dword [esp], edi
mov ecx, dword [ebp - 0x154]
call ecx
sub esp, 0x10
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x11f
mov edi, dword fs:[0x18]
mov eax, dword [edi + 0x34]
mov dword [esp], ebx
mov dword [esp + 4], str.failed_to_set_context_value__lu_n
mov dword [esp + 8], eax
call fcn.00401be0
mov ecx, 0x121
mov edx, 1
mov eax, esi
call fcn.00401c00
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x436528
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [sym.imp.winhttp.dll_WinHttpConnect]
mov dword [ebp - 0x178], eax
call eax
sub esp, 0x10
mov ebx, eax
mov dword [ebp - 0x158], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x123
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4361ec
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
mov ecx, 0x125
mov edx, 2
mov eax, esi
call fcn.00401c00
mov eax, dword [sym.imp.winhttp.dll_WinHttpOpenRequest]
mov dword [esp], ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str._tests_hello.html
mov dword [esp + 4], 0
mov dword [ebp - 0x160], eax
call eax
sub esp, 0x1c
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x127
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43620d
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
mov edx, 3
mov ecx, 0x129
mov eax, esi
call fcn.00401c00
mov eax, dword [sym.imp.winhttp.dll_WinHttpSendRequest]
mov dword [esp], ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [ebp - 0x164], eax
call eax
mov edx, eax
sub esp, 0x1c
mov eax, dword [edi + 0x34]
test edx, edx
jne 0x404c11
cmp eax, 0x2efd
je 0x405c98
cmp eax, 0x2ee2
je 0x405c98
mov dword [ebp - 0x14c], edx
call fcn.00431c30
mov edi, dword fs:[0x18]
mov dword [eax], 0x436036
mov dword [eax + 4], 0x131
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43622b
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x14c]
mov dword [esp], edx
call fcn.00401be0
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov dword [ebp - 0x14c], eax
call eax
mov edx, 4
mov ecx, 0x134
mov eax, esi
sub esp, 8
call fcn.00401c00
mov ecx, dword [sym.imp.winhttp.dll_WinHttpReceiveResponse]
mov dword [esp], ebx
mov dword [esp + 4], 0
mov dword [ebp - 0x168], ecx
call ecx
sub esp, 8
mov dword [ebp - 0x150], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x136
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4362dc
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x150]
mov dword [esp], edx
call fcn.00401be0
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x140], 4
sub esp, 8
mov dword [esp + 0x10], ecx
lea ecx, [ebp - 0x13c]
mov dword [esp + 0xc], ecx
mov ecx, dword [sym.imp.winhttp.dll_WinHttpQueryHeaders]
mov dword [esp], ebx
mov dword [esp + 0x14], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x20000013
mov dword [ebp - 0x16c], ecx
call ecx
sub esp, 0x18
mov dword [ebp - 0x150], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x13c
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x436585
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x150]
mov dword [esp], edx
call fcn.00401be0
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x13d
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x436320
cmp eax, 0xc8
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov ecx, dword [sym.imp.kernel32.dll_ResetEvent]
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov dword [ebp - 0x170], ecx
call ecx
mov edx, 0xd
mov ecx, 0x140
mov eax, esi
sub esp, 4
call fcn.00401c00
mov ecx, dword [sym.imp.winhttp.dll_WinHttpCloseHandle]
mov dword [esp], ebx
mov dword [ebp - 0x150], ecx
call ecx
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov ecx, 0x145
mov edx, 2
mov eax, esi
sub esp, 8
call fcn.00401c00
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str._tests_hello.html
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x158]
mov dword [esp], eax
mov eax, dword [ebp - 0x160]
call eax
sub esp, 0x1c
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x147
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43620d
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
lea eax, [ebp - 0x138]
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x2d
mov dword [esp], ebx
mov eax, dword [ebp - 0x154]
call eax
sub esp, 0x10
mov dword [ebp - 0x180], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x14a
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.failed_to_set_context_value__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x180]
mov dword [esp], edx
call fcn.00401be0
mov edx, 3
mov ecx, 0x14c
mov eax, esi
call fcn.00401c00
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov eax, dword [ebp - 0x164]
call eax
mov edx, eax
sub esp, 0x1c
mov eax, dword [edi + 0x34]
test edx, edx
jne 0x404f4f
cmp eax, 0x2efd
je 0x405c20
cmp eax, 0x2ee2
je 0x405c20
mov dword [ebp - 0x180], edx
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x154
mov edi, dword fs:[0x18]
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43622b
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x180]
mov dword [esp], edx
call fcn.00401be0
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov edx, 4
mov ecx, 0x158
mov eax, esi
sub esp, 8
call fcn.00401c00
mov dword [esp], ebx
mov dword [esp + 4], 0
mov ecx, dword [ebp - 0x168]
call ecx
sub esp, 8
mov dword [ebp - 0x180], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x15a
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4362dc
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x180]
mov dword [esp], edx
call fcn.00401be0
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
lea ecx, [ebp - 0x140]
mov dword [ebp - 0x140], 4
sub esp, 8
mov dword [esp + 0x10], ecx
lea ecx, [ebp - 0x13c]
mov dword [esp], ebx
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0
mov dword [esp + 4], 0x20000013
mov ecx, dword [ebp - 0x16c]
call ecx
sub esp, 0x18
mov dword [ebp - 0x180], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x160
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x436585
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x180]
mov dword [esp], edx
call fcn.00401be0
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x161
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x436320
cmp eax, 0xc8
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov ecx, dword [ebp - 0x170]
call ecx
mov edx, 0xd
mov ecx, 0x164
mov eax, esi
sub esp, 4
call fcn.00401c00
mov dword [esp], ebx
mov ecx, dword [ebp - 0x150]
call ecx
sub esp, 4
mov dword [esp], ebx
mov ebx, dword [ebp - 0x150]
call ebx
mov ecx, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], ecx
call ebx
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov edx, dword [ebp - 0x15c]
sub esp, 8
test edx, edx
jne 0x405a78
mov ecx, 0x170
mov edx, 0xd
mov eax, esi
call fcn.00401c00
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0x150]
call eax
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
sub esp, 8
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x4361aa
mov eax, dword [ebp - 0x17c]
call eax
sub esp, 0x14
mov ebx, eax
mov dword [ebp - 0x148], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x17b
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4361bc
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0x402f30
mov edi, dword [ebp - 0x148]
mov dword [esp], edi
mov eax, dword [ebp - 0x174]
call eax
lea eax, [ebp - 0x138]
sub esp, 0x10
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x2d
mov dword [ebp - 0x148], edi
mov dword [esp], edi
mov ecx, dword [ebp - 0x154]
call ecx
sub esp, 0x10
mov ebx, eax
call fcn.00431c30
mov edi, dword fs:[0x18]
mov dword [eax], 0x436036
mov dword [eax + 4], 0x186
mov eax, dword [edi + 0x34]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov dword [esp + 4], str.failed_to_set_context_value__lu_n
call fcn.00401be0
mov ecx, 0x188
mov edx, 1
mov eax, esi
call fcn.00401c00
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x436528
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0x178]
call eax
sub esp, 0x10
mov ebx, eax
mov dword [ebp - 0x158], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x18a
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4361ec
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
mov edx, 2
mov ecx, 0x18c
mov eax, esi
call fcn.00401c00
mov dword [esp], ebx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str._tests_hello.html
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x160]
call eax
sub esp, 0x1c
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x18e
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43620d
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
lea eax, [ebp - 0x138]
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x2d
mov dword [esp], ebx
mov ecx, dword [ebp - 0x154]
call ecx
sub esp, 0x10
mov dword [ebp - 0x174], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x191
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.failed_to_set_context_value__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x174]
mov dword [esp], edx
call fcn.00401be0
mov edx, 3
mov ecx, 0x193
mov eax, esi
call fcn.00401c00
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov eax, dword [ebp - 0x164]
call eax
mov edx, eax
sub esp, 0x1c
mov eax, dword [edi + 0x34]
test edx, edx
jne 0x405440
cmp eax, 0x2efd
je 0x405c48
cmp eax, 0x2ee2
je 0x405c48
mov dword [ebp - 0x174], edx
call fcn.00431c30
mov edi, dword fs:[0x18]
mov dword [eax], 0x436036
mov dword [eax + 4], 0x19b
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43622b
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x174]
mov dword [esp], edx
call fcn.00401be0
mov ecx, 0x19d
mov edx, 4
mov eax, esi
call fcn.00401c00
mov dword [esp], ebx
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x168]
call eax
sub esp, 8
mov dword [ebp - 0x174], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x19f
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4362dc
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x174]
mov dword [esp], edx
call fcn.00401be0
lea eax, [ebp - 0x140]
mov dword [ebp - 0x140], 4
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x13c]
mov dword [esp], ebx
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x20000013
mov eax, dword [ebp - 0x16c]
call eax
sub esp, 0x18
mov dword [ebp - 0x174], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1a3
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x436585
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x174]
mov dword [esp], edx
call fcn.00401be0
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1a4
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x436320
cmp eax, 0xc8
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x170]
call eax
mov ecx, 0x1a7
mov edx, 0xd
mov eax, esi
sub esp, 4
call fcn.00401c00
mov dword [esp], ebx
mov eax, dword [ebp - 0x150]
call eax
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov ecx, 0x1ab
mov edx, 2
mov eax, esi
sub esp, 8
call fcn.00401c00
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str._tests_hello.html
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x158]
mov dword [esp], eax
mov eax, dword [ebp - 0x160]
call eax
sub esp, 0x1c
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1ad
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43620d
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
lea eax, [ebp - 0x138]
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x2d
mov dword [esp], ebx
mov eax, dword [ebp - 0x154]
call eax
sub esp, 0x10
mov dword [ebp - 0x154], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1b0
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.failed_to_set_context_value__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x154]
mov dword [esp], edx
call fcn.00401be0
mov edx, 3
mov ecx, 0x1b2
mov eax, esi
call fcn.00401c00
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
mov eax, dword [ebp - 0x164]
call eax
mov edx, eax
sub esp, 0x1c
mov eax, dword [edi + 0x34]
test edx, edx
jne 0x405729
cmp eax, 0x2efd
je 0x405c70
cmp eax, 0x2ee2
je 0x405c70
mov dword [ebp - 0x154], edx
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1ba
mov edi, dword fs:[0x18]
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x43622b
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x154]
mov dword [esp], edx
call fcn.00401be0
mov ecx, 0x1bc
mov edx, 4
mov eax, esi
call fcn.00401c00
mov dword [esp + 4], 0
mov dword [esp], ebx
mov eax, dword [ebp - 0x168]
call eax
sub esp, 8
mov dword [ebp - 0x154], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1be
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4362dc
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x154]
mov dword [esp], edx
call fcn.00401be0
lea eax, [ebp - 0x140]
mov dword [ebp - 0x140], 4
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x13c]
mov dword [esp + 0x14], 0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x20000013
mov dword [esp], ebx
mov eax, dword [ebp - 0x16c]
call eax
sub esp, 0x18
mov dword [ebp - 0x154], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1c2
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x436585
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x154]
mov dword [esp], edx
call fcn.00401be0
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1c3
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x436320
cmp eax, 0xc8
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov ecx, 0x1c5
mov edx, 0xd
mov eax, esi
call fcn.00401c00
mov dword [esp], ebx
mov edi, dword [ebp - 0x150]
call edi
mov eax, dword [ebp - 0x158]
sub esp, 4
mov dword [esp], eax
call edi
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov eax, dword [ebp - 0x15c]
sub esp, 8
test eax, eax
jne 0x405940
mov edx, 0xd
mov ecx, 0x1d1
mov eax, esi
call fcn.00401c00
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0x150]
call eax
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
mov eax, dword [ebp - 0x14c]
call eax
mov eax, dword [ebp - 0x124]
mov ebx, dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 8
mov dword [esp], eax
call ebx
mov edx, 0x1d5
mov eax, esi
sub esp, 4
call fcn.00401cc0
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
call ebx
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
mov edi, dword [ebp - 0x14c]
call edi
sub esp, 8
mov dword [ebp - 0x13c], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1ce
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x4367be
cmp eax, 0x102
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov ecx, 0x1d1
mov edx, 0xd
mov eax, esi
call fcn.00401c00
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0x150]
call eax
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x124]
mov ebx, dword [sym.imp.kernel32.dll_CloseHandle]
sub esp, 8
mov dword [esp], eax
call ebx
mov edx, 0x1d5
mov eax, esi
sub esp, 4
call fcn.00401cc0
mov dword [esp + 4], 0x64
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
call edi
sub esp, 8
mov dword [ebp - 0x13c], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1da
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x4367be
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
jmp 0x405925
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x118
mov dword [esp], str.Unload_event_not_supported_n
call fcn.00402a00
jmp 0x404a0d
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
mov ebx, dword [ebp - 0x14c]
call ebx
sub esp, 8
mov dword [ebp - 0x13c], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x16d
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x4367be
cmp eax, 0x102
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov ecx, 0x170
mov edx, 0xd
mov eax, esi
call fcn.00401c00
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0x150]
call eax
sub esp, 4
mov dword [esp + 4], 0xffffffff
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call ebx
sub esp, 8
mov dword [esp + 4], 0x64
mov eax, dword [ebp - 0x144]
mov dword [esp], eax
call ebx
sub esp, 8
mov dword [ebp - 0x13c], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x177
mov eax, dword [ebp - 0x13c]
mov dword [esp + 4], 0x4367be
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.00401be0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0x4361aa
mov eax, dword [ebp - 0x17c]
call eax
sub esp, 0x14
mov ebx, eax
mov dword [ebp - 0x148], eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x17b
mov eax, dword [edi + 0x34]
mov dword [esp + 4], 0x4361bc
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.00401be0
lea eax, [ebp - 0x144]
mov dword [esp], ebx
mov dword [esp + 0xc], 4
mov dword [esp + 8], eax
mov dword [esp + 4], 0x63
mov eax, dword [ebp - 0x154]
call eax
sub esp, 0x10
mov ebx, eax
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x180
mov dword [esp + 4], str.failed_to_set_unload_option_n
mov dword [esp], ebx
call fcn.00401be0
jmp 0x4051f3
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x151
mov dword [esp], 0x436568
call fcn.00401670
jmp 0x405882
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x198
mov dword [esp], 0x436568
call fcn.00401670
jmp 0x405882
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x1b7
mov dword [esp], 0x436568
call fcn.00401670
jmp 0x405882
call fcn.00431c30
mov dword [eax], 0x436036
mov dword [eax + 4], 0x12e
mov dword [esp], 0x436568
call fcn.00401670
mov eax, dword [sym.imp.kernel32.dll_WaitForSingleObject]
mov dword [ebp - 0x14c], eax
mov eax, dword [sym.imp.winhttp.dll_WinHttpCloseHandle]
mov dword [ebp - 0x150], eax
jmp 0x405882