Function at 0x40f956
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Connect udp socket
Create tcp socket
Create udp socket
Delete file
Get file size
Get local ipv4 addresses
Get socket information
Move file
Send data
Send data on socket
Send http request

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea edi, [ebp - 0x74]
push ebx
mov ebx, ecx
sub esp, 0xd4
mov eax, dword [0x42e650]
mov dword [ecx + 0x38], eax
mov ecx, 0x5c
mov dword [ebp - 0xb0], eax
xor eax, eax
test edi, edi
je 0x40f985
jecxz 0x40f985
cld
rep stosb byte es:[edi], al
mov eax, dword [ebx + 0x40]
mov dword [ebp - 0x9c], eax
add eax, 0x4000
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0x9c]
add eax, 0x4400
mov dword [ebx + 0x54], eax
push str.:_NO_CACHE_r_n
push dword [ebp - 0x9c]
call fcn.004034dd
add esp, 0x10
mov esi, eax
test eax, eax
jne 0x40f9d7
push ecx
push ecx
push str._nCACHE_CONTROL:
push dword [ebp - 0x9c]
call fcn.004034dd
add esp, 0x10
mov esi, eax
push eax
push eax
push str.Authorization
push dword [ebp - 0x9c]
call fcn.0040f8fb
mov dword [ebp - 0xc0], eax
pop eax
pop edx
push str.If_modified_since
push dword [ebp - 0x9c]
call fcn.0040f8fb
add esp, 0x10
mov dword [ebp - 0xc8], eax
test byte [0x46d97f], 0x10
je 0x40fa2b
push eax
push eax
push str._nCookie
push dword [ebp - 0x9c]
call fcn.004034dd
add esp, 0x10
mov dword [ebp - 0x1c], eax
push eax
push eax
push str._nProxy_Authorization:
push dword [ebp - 0x9c]
call fcn.004034dd
add esp, 0x10
mov edi, eax
test eax, eax
je 0x40fabb
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x9c]
sub esp, 0xc
mov dword [eax + 0x4400], 0x4413e1
lea eax, [edi + 0x16]
mov dword [ecx + 0x4404], eax
mov eax, ecx
mov ecx, ebx
add eax, 0x4418
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x94]
push eax
call fcn.004078c4
mov dword [ebp - 0x34], eax
add esp, 0xc
test eax, eax
je 0x40faa2
push ebx
push dword [ebp - 0x94]
push 0x10
push eax
call fcn.00411ea0
add esp, 0x10
mov dword [ebp - 0x3c], eax
push eax
lea eax, [edi + 1]
push dword [ebx + 0x60]
push dword [ebp - 0x9c]
push eax
call fcn.004136ef
add esp, 0x10
mov dword [ebx + 0x60], eax
test byte [0x46d97b], 0x40
je 0x40fb14
cmp dword [ebp - 0x3c], 0
jne 0x40fb14
mov eax, dword [0x46d980]
mov dword [ebx + 0x6c], 0
bt eax, 0x14
jb 0x40fae5
test byte [0x46d97c], 0x80
jne 0x40fb09
bt eax, 0x15
jae 0x40fb09
test byte [ebx + 0x35], 8
jne 0x40fb09
sub esp, 0xc
push dword [ebp - 0x9c]
mov ecx, ebx
call fcn.00408afc
add esp, 0xc
jmp 0x411302
push esi
push esi
push 0x65
push str.HTTP_1.1_407_deny_r_nProxy_Authenticate:_Basic_realm_Proxy__r_nContent_Type:_text_plain_r_n_r_nAccess_denyed
jmp 0x40fb79
mov eax, dword [ebp - 0x9c]
add eax, 6
test byte [0x46d97e], 0x80
je 0x40fb3b
push ecx
push ecx
push dword [ebp - 0xa0]
push eax
call fcn.0040f432
add esp, 0x10
mov edi, eax
jmp 0x40fb4a
push edx
push edx
push 0x20
push eax
call fcn.0040ed80
add esp, 0x10
mov edi, eax
cmp dword [0x46de14], 0
je 0x40fb85
push eax
push eax
lea eax, [ebx + 0x88]
push eax
push edi
call fcn.0040f7e9
add esp, 0x10
test eax, eax
je 0x40fb85
mov dword [ebx + 0x6c], 0
push esi
push esi
push 0x4d
push str.HTTP_1.1_400_deny_r_n_r_nContent_Type:_text_html_r_n_r_n_h1_Virus._Access_denyed__h1_
mov ecx, ebx
call fcn.0042d768
jmp 0x40fd74
cmp dword [0x46d884], 0
je 0x40fc50
mov dword [ebx + 0x5c], 0
mov dword [ebp - 0x88], 0
mov eax, dword [0x46d98c]
inc dword [0x46dd50]
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], eax
mov eax, dword [0x46d75c]
mov dword [ebp - 0xc4], eax
xor eax, eax
cmp dword [ebp - 0xac], eax
jle 0x40fc08
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ecx + eax*4]
cmp edx, 1
jbe 0x40fc05
mov ecx, dword [edx + 0x34]
and ecx, 0xf0000
cmp ecx, 0x10000
jne 0x40fc05
mov ecx, dword [ebx + 0x14]
cmp dword [edx + 0x14], ecx
jne 0x40fc05
cmp dword [edx + 0x5c], edi
jne 0x40fc05
inc dword [ebp - 0xa8]
inc eax
jmp 0x40fbcb
call fcn.0040aaf3
mov eax, dword [ebp - 0xa8]
cmp dword [0x46d884], eax
jg 0x40fc50
push ecx
push dword [ebx]
push 1
push 1
call fcn.0040bdd0
add esp, 0x10
test eax, eax
jne 0x4112d3
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp eax, dword [0x42e650]
jle 0x40fba3
jmp 0x4112d3
cmp dword [0x42e594], 0
mov dword [ebx + 0x5c], edi
je 0x40fc88
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xbc], eax
test byte [0x46d97e], 0x80
jne 0x40fc88
push edx
push edi
push dword [ebp - 0x9c]
push eax
call fcn.0040f570
inc dword [ebp - 0x4c]
add esp, 0x10
mov dword [ebp - 0x50], eax
mov eax, dword [ebx + 0x60]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x9c]
add eax, dword [ebp - 0xac]
mov dword [ebp - 0x94], eax
push eax
push eax
push str.HOST
push dword [ebp - 0x9c]
call fcn.0040f8fb
add esp, 0x10
mov dword [ebp - 0xa8], eax
test eax, eax
jne 0x40fd0d
push eax
push eax
push str.tp:__
push dword [ebp - 0x9c]
call fcn.004034b9
mov ecx, dword [ebp - 0x9c]
add esp, 0x10
add ecx, 8
mov dword [ebp - 0xa8], ecx
test eax, eax
je 0x40fcf3
add eax, 5
mov dword [ebp - 0xa8], eax
push eax
push eax
push 0x4414de
push dword [ebp - 0xa8]
call fcn.00403442
add esp, 0x10
mov dword [ebp - 0x2c], eax
jmp 0x40fd3e
push eax
push eax
push 0xd
push dword [ebp - 0xa8]
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0x30], eax
test eax, eax
je 0x4111b5
mov edx, eax
sub edx, dword [ebp - 0xa8]
cmp edx, 0x40
ja 0x4111b5
mov byte [eax], 0
push eax
push dword [ebp - 0x30]
push dword [0x42e4b4]
push dword [ebp - 0xa8]
call fcn.0040f3d4
add esp, 0x10
test eax, eax
je 0x40fd7b
mov dword [ebx + 0x6c], 0
mov ecx, ebx
push edi
push edi
push 0x190
push str.Access_denied
call fcn.0040b1ae
pop ebx
pop esi
jmp 0x411302
mov eax, dword [0x46db44]
test eax, eax
je 0x40fda8
cmp byte [eax], 0
je 0x40fda8
push ecx
push dword [ebp - 0x30]
push dword [0x42e4b0]
push dword [ebp - 0xa8]
call fcn.0040f3d4
add esp, 0x10
test eax, eax
jne 0x40fda8
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0
jne 0x40fdf7
mov dword [ebp - 0xb8], 0x50
mov eax, dword [ebp - 0x9c]
cmp dword [eax + 4], 0x3a707466
jne 0x40fdf7
push edx
push edx
push 0x4414f0
push eax
mov dword [ebp - 0x60], 0xffffffff
call fcn.004034b9
add esp, 0x10
mov dword [ebp - 0xb8], 0x15
test eax, eax
jne 0x40ffec
mov dword [ebx + 0x6c], 0
mov eax, dword [ebp - 0x9c]
cmp dword [eax], 0x20544547
jne 0x40ff2a
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0xa8]
cmp eax, 0xfe
jg 0x40ff2a
or esi, dword [ebp - 0xc8]
jne 0x40ff2a
cmp dword [ebp - 0x1c], 0
jne 0x40ff2a
cmp dword [0x42e594], 0
je 0x40ff2a
push esi
push esi
push 0
push dword [ebp - 0xa0]
call fcn.0040357d
pop edx
pop ecx
mov dword [ebp - 0x70], eax
test eax, eax
js 0x40fe88
push edi
push edi
push 0
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
pop edx
pop ecx
test eax, eax
jne 0x410a06
sub esp, 0xc
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x70], 0
add esp, 0xc
jmp 0x40ff2a
test byte [0x46d97e], 0x80
jne 0x40fe9f
test byte [0x46d97d], 4
jne 0x40fee6
jmp 0x40ff2a
cmp dword [ebp - 0x4c], 0
jne 0x40fe91
mov eax, dword [ebp - 0x9c]
push edx
push edi
lea esi, [eax + 0x4200]
push eax
push esi
call fcn.0040f570
pop ecx
push dword [ebp - 0xa0]
mov dword [ebp - 0x50], eax
inc dword [ebp - 0x4c]
call fcn.0040f5d8
pop eax
pop edx
push dword [ebp - 0xa0]
push esi
call dword [sym.imp.KERNEL32.dll_MoveFileA]
pop ecx
pop esi
test eax, eax
je 0x40fe91
jmp 0x40fe40
cmp dword [ebp - 0x50], 0
je 0x40ff2a
mov eax, dword [ebp - 0x9c]
push edi
push dword [0x42e594]
lea esi, [eax + 0x4200]
push str._s_8.8X.asi
push esi
call dword [sym.imp.USER32.dll_wsprintfA]
pop eax
pop edx
mov dword [ebp - 0x50], 0
push dword [ebp - 0xa0]
push esi
call dword [sym.imp.KERNEL32.dll_MoveFileA]
pop ecx
test eax, eax
pop esi
jmp 0x40fe3a
cmp dword [ebp - 0x20], 0
je 0x40ffec
mov eax, dword [0x46db44]
mov dword [ebp - 0xa8], eax
mov eax, dword [0x42e684]
mov dword [ebp - 0xb8], eax
mov eax, dword [0x46db60]
test eax, eax
je 0x40ffec
sub esp, 0xc
push eax
call fcn.0042d5c4
mov edi, dword [ebp - 0x9c]
add esp, 0xc
push eax
add edi, 0x4200
push dword [0x46db60]
push edi
call fcn.004125b3
mov edx, edi
add esp, 0x10
sub edx, eax
mov eax, dword [ebp - 0x9c]
lea esi, [eax + edx - 0x1d]
mov dword [ebp - 0x90], esi
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x90]
mov al, byte [eax]
cmp al, 0xa
je 0x40ffc5
test al, al
je 0x40ffc5
lea eax, [edx + 1]
inc dword [ebp - 0x9c]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0x9c]
mov al, byte [eax - 1]
mov byte [edx], al
jmp 0x40ff93
push ecx
push edi
push str._nProxy_Authorization:_Basic__s_r
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
mov edx, dword [ebp - 0x90]
add dword [ebp - 0xac], eax
mov dword [ebp - 0x9c], esi
mov byte [edx + eax], 0xa
add esp, 0x10
mov eax, dword [ebp - 0xa8]
cmp byte [eax], 0x5b
jne 0x41001d
push edx
push edx
push 0x441513
push eax
call fcn.004034b9
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x4100c3
inc dword [ebp - 0xa4]
jmp 0x41008c
push eax
push eax
push 0x3a
push dword [ebp - 0xa8]
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
jne 0x41008c
mov eax, dword [ebp - 0x9c]
lea esi, [eax + 0xb]
push eax
push eax
push 0x3a
push esi
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x4100c3
push eax
push eax
push 0x2f
push esi
call fcn.004033de
add esp, 0x10
cmp dword [ebp - 0xa4], eax
jae 0x4100c3
cmp dword [ebp - 0xb8], 0x15
jne 0x41008c
push edi
push edi
push 0x40
push esi
call fcn.004033de
add esp, 0x10
cmp dword [ebp - 0xa4], eax
jbe 0x4100c3
mov eax, dword [ebp - 0xa4]
sub esp, 0xc
mov byte [eax], 0
inc eax
push eax
call fcn.0041244e
add esp, 0x10
cmp dword [0x42e68c], eax
je 0x4111b5
test eax, eax
je 0x4100c3
cmp dword [ebp - 0x20], 0
cmovne eax, dword [ebp - 0xb8]
mov dword [ebp - 0xb8], eax
push ecx
push ecx
push 0x20
push dword [ebp - 0xa8]
call fcn.0040ed80
add esp, 0x10
mov edi, eax
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x4100ea
movsx ecx, byte [eax]
mov byte [eax], 0
mov dword [ebp - 0xb4], ecx
mov eax, dword [ebx + 0x50]
mov dword [ebp - 0x74], eax
test eax, eax
jle 0x410119
cmp dword [ebx + 0x48], edi
jne 0x41010b
push edx
push eax
push 0
push 0
call fcn.0040bdd0
add esp, 0x10
test eax, eax
je 0x410182
sub esp, 0xc
push dword [ebp - 0x74]
call fcn.0040bf04
add esp, 0x10
mov dword [ebx + 0x50], 0
mov ecx, ebx
call fcn.0040b236
push esi
push esi
push dword [ebp - 0xb8]
push dword [ebp - 0xa8]
call fcn.0040ee84
add esp, 0x10
mov dword [ebp - 0x74], eax
test eax, eax
jle 0x4111b5
mov dword [ebx + 0x50], eax
push edx
lea edx, [ebp - 0x88]
push edx
lea edx, [ebp - 0x84]
push edx
inc dword [ebp - 0x28]
mov dword [ebp - 0x88], 0x10
push eax
call dword [sym.imp.WS2_32.dll_getsockname]
mov eax, dword [ebp - 0x80]
mov dword [ebx + 0x48], edi
mov dword [ebx + 0x58], eax
movzx eax, word [ebp - 0x82]
mov dword [ebx + 0x4c], eax
pop ecx
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x410191
mov cl, byte [ebp - 0xb4]
mov byte [eax], cl
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x41019b
mov byte [eax], 0xd
cmp dword [ebp - 0xa4], 0
je 0x4101ad
mov eax, dword [ebp - 0xa4]
mov byte [eax], 0x3a
cmp dword [ebp - 0x20], 0
jne 0x4108bb
cmp dword [ebp - 0x60], 0
je 0x41080e
push eax
push eax
push 0x40
push dword [ebp - 0x9c]
call fcn.004033de
mov edi, dword [ebp - 0x9c]
add esp, 0x10
mov dword [ebp - 0x8c], eax
add edi, 0xa
test eax, eax
je 0x410221
mov byte [eax], 0
mov eax, dword [ebp - 0x8c]
lea esi, [eax + 1]
push eax
push eax
push 0x3a
push edi
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x410215
mov byte [eax], 0
inc eax
mov dword [ebp - 0x90], eax
jmp 0x410232
mov dword [ebp - 0x90], str.shs_
jmp 0x410232
mov dword [ebp - 0x90], str.shs_
mov esi, edi
mov edi, str.anonymous
cmp dword [ebp - 0xc0], 0
je 0x410275
mov eax, dword [ebp - 0xa0]
mov edi, dword [ebp - 0xc0]
sub esp, 0xc
mov ecx, ebx
mov dword [eax + 0x404], edi
add eax, 0x418
mov dword [eax - 0x18], 0x4413e1
mov dword [ebp - 0x90], eax
lea eax, [ebp - 0x90]
push eax
call fcn.004078c4
mov edi, eax
add esp, 0xc
push eax
push eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
cmp eax, 0x12b
jbe 0x4102aa
cmp dword [ebp - 0x24], 0
jne 0x4111e5
push eax
push eax
push 0x190
push str.Error._Cant_send_request...
jmp 0x4111dc
mov edx, dword [sym.imp.USER32.dll_wsprintfA]
push ecx
push edi
mov dword [ebp - 0xcc], edx
push str.USER__s_r_n
push dword [ebp - 0x94]
call edx
push 0
push eax
mov eax, dword [sym.imp.WS2_32.dll_send]
push dword [ebp - 0x94]
mov dword [ebp - 0xc4], eax
push dword [ebp - 0x74]
call eax
add dword [ebp - 0x64], eax
pop edi
pop eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
mov edi, eax
cmp eax, 0xe6
je 0x410371
cmp eax, 0x14b
mov edx, dword [ebp - 0xcc]
jne 0x41028f
push eax
push dword [ebp - 0x90]
push str.PASS__s_r_n
push dword [ebp - 0x94]
call edx
push 0
push eax
mov eax, dword [ebp - 0xc4]
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call eax
add dword [ebp - 0x64], eax
pop eax
pop edx
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
mov ecx, 0x64
add esp, 0x10
cdq
idiv ecx
cmp eax, 2
jbe 0x410371
sub esp, 0xc
push dword [0x4329a8]
call fcn.0042d5c4
pop edx
pop ecx
push eax
push dword [0x4329a8]
jmp 0x4111c7
mov eax, dword [ebp - 0x94]
cmp byte [eax + 3], 0x2d
jne 0x41038b
sub esp, 0xc
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0xc
push 0
push 8
push str.TYPE_I_r_n
push dword [ebp - 0x74]
call dword [sym.imp.WS2_32.dll_send]
add dword [ebp - 0x64], eax
push eax
push eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
mov eax, dword [ebp - 0x8c]
add esp, 0x10
test eax, eax
je 0x4103d2
cmp dword [ebp - 0xa4], 0
mov byte [eax], 0x40
je 0x4103d2
mov eax, dword [ebp - 0xa4]
mov byte [eax], 0x3a
push eax
push eax
push 0x20
push esi
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x41028f
mov byte [eax], 0
push ecx
push ecx
push 0x2f
push esi
call fcn.004033de
add esp, 0x10
mov dword [ebp - 0x90], eax
test eax, eax
je 0x41028f
sub esp, 0xc
push eax
call fcn.0040f2b3
mov eax, dword [ebp - 0xa4]
add esp, 0x10
cmp byte [eax - 1], 0x2f
je 0x410496
push esi
push dword [ebp - 0x90]
push str.SIZE__s_r_n
push dword [ebp - 0x94]
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call dword [sym.imp.WS2_32.dll_send]
add dword [ebp - 0x64], eax
pop eax
pop edx
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
cmp eax, 0xd5
jne 0x410496
mov eax, dword [ebp - 0x94]
add eax, 3
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x8c]
cmp byte [eax], 0x20
jne 0x410487
inc eax
jmp 0x410473
sub esp, 0xc
push eax
call fcn.0041244e
add esp, 0x10
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x24], 0
jne 0x4104d7
mov eax, dword [sym.imp.WS2_32.dll_send]
push 0
push 6
mov dword [ebp - 0xc4], eax
push 0x44153d
push dword [ebp - 0x74]
call eax
add dword [ebp - 0x64], eax
push ecx
push ecx
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
cmp eax, 0xe3
je 0x410520
jmp 0x41028f
push esi
push dword [ebp - 0x68]
push str.REST__u_r_n
push dword [ebp - 0x94]
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call dword [sym.imp.WS2_32.dll_send]
add dword [ebp - 0x64], eax
pop eax
pop edx
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
cmp eax, 0x190
jbe 0x41049c
jmp 0x41028f
push ecx
push ecx
push 0x28
push dword [ebp - 0x94]
call fcn.004033de
add esp, 0x10
test eax, eax
jne 0x410545
mov dword [ebp - 0x8c], 0
jmp 0x41028f
sub esp, 0xc
lea esi, [ebp - 0x8c]
inc eax
push esi
mov dword [ebp - 0x8c], eax
call fcn.00412680
mov dword [esp], esi
inc dword [ebp - 0x8c]
mov dword [ebp - 0x80], eax
call fcn.00412570
mov word [ebp - 0x82], ax
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [esp], eax
mov dword [ebp - 0x8c], eax
call fcn.0041244e
add esp, 0xc
mov edx, str.RETR__s_r_n
shl eax, 8
or word [ebp - 0x82], ax
mov eax, dword [ebp - 0xa4]
cmp byte [eax - 1], 0x2f
mov eax, str.LIST__s_r_n
push dword [ebp - 0x90]
cmovne eax, edx
push eax
push dword [ebp - 0x94]
call dword [sym.imp.USER32.dll_wsprintfA]
push 0
push eax
mov eax, dword [ebp - 0xc4]
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call eax
add dword [ebp - 0x64], eax
add esp, 0xc
push 6
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov dword [ebp - 0x60], eax
pop edx
test eax, eax
jle 0x41028f
mov word [ebp - 0x84], 2
sub esp, 0xc
push 0x14
call dword [sym.imp.KERNEL32.dll_Sleep]
push eax
push eax
lea eax, [ebp - 0x84]
push 0x10
push eax
push dword [ebp - 0x60]
call dword [sym.imp.WS2_32.dll_connect]
add esp, 0x14
test eax, eax
js 0x410656
push eax
push eax
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f281
add esp, 0x10
sub eax, 0x64
cmp eax, 0x63
ja 0x410656
mov eax, dword [ebp - 0xa4]
cmp byte [eax - 1], 0x2f
jne 0x410729
mov ecx, ebx
call fcn.0040c424
xor edx, edx
jmp 0x4106cf
sub esp, 0xc
push dword [ebp - 0x90]
call fcn.0040f36f
add esp, 0x10
test eax, eax
je 0x41028f
sub esp, 0xc
push dword [ebx]
call fcn.0040bf04
jmp 0x410414
mov eax, dword [ebp - 0x9c]
add dword [ebp - 0x68], edi
mov ecx, ebx
mov byte [eax + edi], 0
lea eax, [eax + edi + 0x14]
push edx
push edx
push eax
push dword [ebp - 0x9c]
call fcn.0040c3ac
mov dword [ebp - 0x90], eax
mov esi, eax
sub eax, dword [ebp - 0x9c]
sub edi, eax
pop ecx
mov edx, edi
pop edi
test edx, edx
jle 0x41070d
mov edi, dword [ebp - 0x9c]
mov ecx, edx
test edi, edi
je 0x4106cc
test esi, esi
je 0x4106cc
jecxz 0x4106cc
cld
rep movsb byte es:[edi], byte [esi]
sub dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x9c]
sub esp, 0xc
push dword [0x42e650]
push dword [ebp - 0x70]
add eax, edx
push 0x8000
push eax
push dword [ebp - 0x60]
mov dword [ebp - 0xa0], edx
call fcn.0040f201
mov edx, dword [ebp - 0xa0]
add esp, 0x20
lea edi, [edx + eax]
test edi, edi
jg 0x41067e
jmp 0x410711
xor edx, edx
jmp 0x4106cc
sub esp, 0xc
push dword [ebp - 0x9c]
mov ecx, ebx
call fcn.0040c43e
add esp, 0xc
jmp 0x4111e5
cmp dword [0x42e594], 0
je 0x410793
cmp dword [ebp - 0xc0], 0
jne 0x410793
cmp dword [ebp - 0x70], 0
jg 0x410793
cmp dword [ebp - 0x6c], 0
jg 0x410793
mov eax, dword [0x46d954]
test eax, eax
je 0x410755
cmp eax, dword [ebp - 0x58]
jbe 0x410793
cmp dword [ebp - 0x24], 0
je 0x41077f
push esi
push esi
push 1
push dword [ebp - 0xbc]
call fcn.0040357d
sub esp, 0xc
mov dword [ebp - 0x6c], eax
push 2
push 0
push eax
call fcn.0040364f
add esp, 0x14
jmp 0x410793
sub esp, 0xc
push dword [ebp - 0xbc]
call fcn.0040f61c
add esp, 0x10
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x24], 0
jne 0x4107d5
mov edx, dword [ebp - 0x58]
mov ecx, str.HTTP_1.0_200_r_nContent_type:_application_octet_stream_r_n_r_n
mov eax, str.HTTP_1.0_200_r_nContent_Length:__u_r_nContent_type:_application_octet_stream_r_n_r_n
mov esi, dword [ebp - 0x6c]
test edx, edx
cmove eax, ecx
push ecx
push edx
push eax
push dword [ebp - 0x94]
call dword [sym.imp.USER32.dll_wsprintfA]
push esi
push eax
push dword [ebp - 0x94]
push ebx
call fcn.0040f250
mov dword [ebp - 0x68], 0
add esp, 0x20
lea eax, [ebp - 0x74]
lea edx, [ebp - 0x60]
mov ecx, dword [eax]
xchg dword [edx], ecx
mov dword [eax], ecx
mov eax, dword [0x46de14]
test eax, eax
je 0x410ff9
push edx
push edx
push dword [0x42f9c8]
push eax
mov dword [ebp - 0x48], 1
call fcn.0040f64c
add esp, 0x10
mov dword [ebp - 0x44], eax
jmp 0x410ff9
push eax
push eax
mov eax, dword [ebp - 0x9c]
push 0x2f
add eax, 0xc
push eax
call fcn.004033de
mov edi, dword [ebp - 0x9c]
add esp, 0x10
mov dword [ebp - 0xa0], edi
test eax, eax
je 0x410872
cmp byte [eax + 4], 0xd
je 0x410872
cmp byte [edi + 8], 0x3a
mov dl, byte [edi + 9]
je 0x41084a
cmp dl, 0x3a
jne 0x410872
jmp 0x41084f
cmp dl, 0x3a
jne 0x410854
mov byte [eax - 1], 0x20
dec eax
mov ecx, dword [ebp - 0x9c]
lea edi, [eax - 4]
mov dword [ebp - 0xa0], edi
mov edx, dword [ecx]
mov dword [eax - 4], edx
mov eax, edi
sub eax, ecx
sub dword [ebp - 0xac], eax
push eax
push eax
push str._nProxy_Connection:
push dword [ebp - 0xa0]
call fcn.004034dd
add esp, 0x10
mov dword [ebp - 0x90], eax
test eax, eax
je 0x4108c7
sub dword [ebp - 0xac], 6
mov ecx, dword [ebp - 0xac]
lea edi, [eax + 1]
lea esi, [eax + 7]
sub eax, dword [ebp - 0xa0]
sub ecx, eax
test edi, edi
je 0x4108b9
test esi, esi
je 0x4108b9
jecxz 0x4108b9
cld
rep movsb byte es:[edi], byte [esi]
jmp 0x4108c7
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xa0]
cmp dword [eax], 0x4e4e4f43
jne 0x410925
cmp dword [ebp - 0x20], 0
jne 0x4108ee
push eax
push 0x10
push str.HTTP_1.1_200_r_n_r_n
push ebx
call fcn.0040b3df
add esp, 0x10
jmp 0x410902
push 0
push dword [ebx + 0x60]
push dword [ebp - 0x9c]
push dword [ebp - 0x74]
call dword [sym.imp.WS2_32.dll_send]
push edi
mov ecx, ebx
push edi
push dword [ebp - 0x9c]
push dword [ebp - 0x74]
call fcn.0040f2f8
mov eax, dword [ebx + 0x70]
add dword [ebp - 0x68], eax
mov eax, dword [ebx + 0x74]
add dword [ebp - 0x64], eax
jmp 0x4111e3
push esi
push esi
push str.Content_Length
push dword [ebp - 0xa0]
call fcn.0040f8fb
add esp, 0x10
mov dword [ebp - 0x90], eax
test eax, eax
je 0x410955
sub esp, 0xc
push eax
call fcn.0041244e
sub eax, dword [ebx + 0x68]
mov dword [ebp - 0x54], eax
jmp 0x4109b3
test byte [ebx + 0x34], 8
jne 0x4109b6
test byte [0x46d97e], 2
je 0x4109b6
cmp dword [0x47a7b8], 0
jle 0x4109b6
push ecx
push ecx
push 0x441581
push dword [ebp - 0xa0]
call fcn.004034b9
add esp, 0x10
mov dword [ebp - 0x8c], eax
test eax, eax
je 0x4109b6
add eax, 2
push edx
push edx
push str.Accept_Encoding:_gzip_r_n_r_n
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
mov edx, dword [ebp - 0x8c]
sub edx, dword [ebp - 0xa0]
lea eax, [edx + eax + 2]
mov dword [ebp - 0xac], eax
add esp, 0x10
mov eax, dword [ebp - 0xac]
push 0
push eax
push dword [ebp - 0xa0]
push dword [ebp - 0x74]
call dword [sym.imp.WS2_32.dll_send]
test eax, eax
js 0x41028f
add dword [ebp - 0x64], eax
cmp dword [ebp - 0x54], 0
mov eax, dword [0x42e650]
jle 0x410a06
sub esp, 0xc
push eax
push 0
push 0xfa0
push dword [ebp - 0xa0]
push dword [ebx]
call fcn.0040f201
add esp, 0x20
sub dword [ebp - 0x54], eax
test eax, eax
jg 0x4109bc
mov dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x88]
mov edx, 0x1388
sub esp, 0xc
push dword [0x42e650]
push dword [ebp - 0x70]
sub edx, eax
add eax, dword [ebp - 0x94]
push edx
push eax
push dword [ebp - 0x74]
call fcn.0040f201
add esp, 0x20
mov esi, dword [ebp - 0x88]
test eax, eax
mov edi, eax
jg 0x410a83
test esi, esi
jne 0x410af8
cmp dword [ebp - 0x28], 0
jne 0x410a72
cmp dword [ebp - 0x90], 0
jne 0x410a72
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x41010b
mov byte [eax], 0
jmp 0x41010b
push eax
push eax
push 0x190
push str.Error._Cant_receive_header...
jmp 0x4111dc
add esi, eax
add dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x88], esi
mov byte [eax + esi], 0
push eax
push eax
push 0x4415dc
push dword [ebp - 0x94]
call fcn.004034b9
add esp, 0x10
mov esi, eax
test eax, eax
je 0x410ac2
cmp byte [eax - 1], 0xd
je 0x410b08
cmp byte [eax + 3], 0xd
jne 0x410b08
inc esi
jmp 0x410b08
push eax
push eax
push 0x4415e0
push dword [ebp - 0x94]
call fcn.004034b9
add esp, 0x10
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x410ae6
mov esi, eax
dec esi
jmp 0x410b08
mov esi, dword [ebp - 0x88]
cmp esi, 0x1387
jle 0x410a10
cmp dword [ebp - 0x24], 0
jne 0x4111e5
add esi, dword [ebp - 0x94]
mov eax, dword [ebp - 0x94]
sub esp, 0xc
add eax, 9
push eax
call fcn.0041244e
movsx edi, byte [esi + 1]
add esp, 0x10
mov byte [esi + 1], 0
mov dword [ebp - 0xb4], eax
cmp dword [ebx + 0x6c], 0
mov eax, edi
mov byte [ebp - 0xa4], al
je 0x410b51
push eax
push eax
push str.Connection:_Keep_Alive
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
mov dword [ebx + 0x6c], eax
sub esp, 0xc
push 0x43f6bc
push 0
push dword [ebp - 0x74]
push dword [ebp - 0x94]
push dword [0x464464]
call fcn.00403f0e
mov al, byte [ebp - 0xa4]
add esp, 0x20
mov byte [esi + 1], al
test byte [ebx + 0x34], 8
jne 0x410c17
cmp dword [0x47a7b8], 0
jle 0x410c17
push ecx
push ecx
push str.Content_Encoding
push dword [ebp - 0x94]
call fcn.0040f8fb
add esp, 0x10
mov dword [ebp - 0x8c], eax
test eax, eax
je 0x410c17
push edx
push edx
push str.gzip
push eax
call fcn.00403494
add esp, 0x10
test eax, eax
je 0x410bd2
mov ecx, ebx
call fcn.00424b5a
test eax, eax
jne 0x410bed
jmp 0x410c17
push ecx
push ecx
push 0x441610
push dword [ebp - 0x8c]
call fcn.00403494
add esp, 0x10
test eax, eax
jne 0x410bc5
jmp 0x410c17
mov eax, dword [ebx + 0x6c]
test eax, eax
je 0x410c10
push edx
push dword [ebp - 0x88]
push dword [ebp - 0x94]
push eax
call fcn.004136ef
add esp, 0x10
mov dword [ebp - 0x88], eax
mov dword [ebx + 0x6c], 0
cmp dword [ebp - 0xb4], 0xce
jne 0x410c41
push eax
push eax
push str.Content_Length
push dword [ebp - 0x94]
call fcn.0040f8fb
add esp, 0x10
mov dword [ebp - 0x34], eax
test eax, eax
jne 0x410c65
jmp 0x410c83
cmp dword [ebp - 0x24], 0
je 0x410c23
push ecx
push ecx
push str._nContent_Range:
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410c23
jmp 0x4111e5
sub esp, 0xc
push eax
call fcn.0041244e
add esp, 0x10
test eax, eax
je 0x410c7a
mov dword [ebp - 0x58], eax
jmp 0x410c83
mov dword [ebp - 0x58], 0xffffffff
jmp 0x410c89
cmp dword [ebp - 0x58], 0
jg 0x410cfc
mov dword [ebp - 0xb0], 5
mov eax, dword [ebx + 0x6c]
test eax, eax
je 0x410cfc
push ecx
push dword [ebp - 0x88]
push dword [ebp - 0x94]
push eax
call fcn.004136ef
mov dword [ebp - 0x88], eax
pop eax
pop edx
push str.Keep_Alive:
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
mov dword [ebp - 0x34], eax
test eax, eax
je 0x410ceb
push edx
push dword [ebp - 0x88]
push dword [ebp - 0x94]
push eax
call fcn.004136ef
add esp, 0x10
mov dword [ebp - 0x88], eax
mov dword [ebx + 0x6c], 0
mov dword [ebp - 0xb0], 5
cmp dword [0x46de14], 0
je 0x410d77
test byte [0x46d982], 2
je 0x410d30
push eax
push eax
push dword [0x42f9c8]
push dword [0x46de14]
mov dword [ebp - 0x48], 1
call fcn.0040f64c
add esp, 0x10
mov dword [ebp - 0x44], eax
jmp 0x410d77
push ecx
push ecx
push str._nContent_type:_application
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410d0e
cmp byte [esi + 3], 0x4d
jne 0x410d55
cmp byte [esi + 4], 0x5a
je 0x410d0e
test byte [0x46d982], 1
je 0x410d77
push edx
push edx
push str._nContent_type:_text_html
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410d0e
cmp dword [ebp - 0xb4], 0x12b
jle 0x410d8f
mov dword [ebp - 0x5c], 0
jmp 0x410e99
test byte [0x46d97b], 4
jne 0x410dec
push eax
push eax
push str.:_NO_CACHE_r_n
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410d83
push eax
push eax
push str._nCACHE_CONTROL:_Private
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410d83
test byte [0x46d97f], 0x10
je 0x410dec
push eax
push eax
push str._nCACHE_CONTROL:
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
jne 0x410d83
cmp dword [0x42e594], 0
je 0x410e99
cmp dword [ebp - 0xc0], 0
jne 0x410e99
cmp dword [ebp - 0x70], 0
jg 0x410e99
mov eax, dword [0x46d954]
test eax, eax
je 0x410e1e
cmp eax, dword [ebp - 0x58]
jbe 0x410e73
cmp dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x6c]
je 0x410e4f
test eax, eax
jne 0x410e73
push eax
push eax
push 1
push dword [ebp - 0xbc]
call fcn.0040357d
sub esp, 0xc
mov dword [ebp - 0x6c], eax
push 2
push 0
push eax
call fcn.0040364f
add esp, 0x14
jmp 0x410e73
test eax, eax
jne 0x410e73
cmp dword [ebp - 0xb4], 0xce
je 0x410e73
sub esp, 0xc
push dword [ebp - 0xbc]
call fcn.0040f61c
add esp, 0x10
mov dword [ebp - 0x6c], eax
test byte [0x46d97b], 4
je 0x410e99
push eax
push eax
push str._nEXPIRES:
push dword [ebp - 0x94]
call fcn.004034dd
add esp, 0x10
test eax, eax
je 0x410e99
mov byte [eax + 1], 0x4e
push eax
push eax
push str._nContent_type:
push dword [ebp - 0x94]
call fcn.004034dd
pop edx
pop ecx
push 0x441699
push dword [ebp - 0x94]
mov dword [ebp - 0x34], eax
call fcn.004034dd
mov edx, dword [ebp - 0x94]
add esp, 0x10
cmp dword [ebp - 0x24], 0
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x8c], edx
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0xc4], eax
je 0x410f2e
lea eax, [esi + 3]
mov dword [ebp - 0xcc], eax
sub eax, edx
mov edx, dword [ebp - 0xc4]
sub edx, eax
mov dword [ebp - 0x88], edx
mov eax, edx
lea edx, [esi + 3]
mov dword [ebp - 0x94], edx
test eax, eax
jle 0x410fa1
test ecx, ecx
jle 0x410fa1
sub esp, 4
push eax
push edx
push ecx
call fcn.0040f67e
add esp, 0x10
jmp 0x410fa1
test ecx, ecx
jle 0x410fa1
mov eax, dword [ebp - 0xc4]
sub edx, esi
lea edi, [edx + eax - 3]
test edi, edi
jle 0x410fa1
push edx
push eax
lea eax, [esi + 3]
push eax
push ecx
call fcn.0040f67e
mov eax, dword [ebp - 0x58]
add esp, 0x10
test eax, eax
je 0x410fa1
cmp eax, dword [ebp - 0x88]
jg 0x410fa1
push eax
push eax
lea eax, [ebx + 0x88]
push eax
push dword [ebp - 0x44]
call fcn.0040f6bb
mov dword [ebp - 0x44], 0
add esp, 0x10
test eax, eax
jle 0x410fa1
push ecx
push ecx
mov ecx, ebx
push 0x4d
push str.HTTP_1.1_400_deny_r_n_r_nContent_Type:_text_html_r_n_r_n_h1_Virus._Access_denyed__h1_
call fcn.0042d768
mov byte [esi + 4], 0
mov dword [ebx + 0x6c], 0
pop esi
pop edi
jmp 0x4111ec
mov eax, dword [ebp - 0x88]
test eax, eax
jle 0x410fcb
push dword [ebp - 0x6c]
push eax
push dword [ebp - 0x94]
push ebx
call fcn.0040f250
add esp, 0x10
test eax, eax
jns 0x410fcb
mov byte [esi + 4], 0
jmp 0x4111ec
mov eax, dword [ebp - 0x8c]
cmp dword [ebp - 0x24], 0
mov dword [ebp - 0x94], eax
jne 0x410fe3
cmp dword [ebp - 0x58], 0
jne 0x410ff1
mov dword [ebp - 0x58], 0
mov dword [ebx + 0x6c], 0
sub esi, eax
add esi, 3
sub dword [ebp - 0x68], esi
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x4112d7
cmp eax, dword [ebp - 0x68]
jle 0x4110d7
mov eax, dword [ebp - 0xb0]
sub esp, 0xc
push eax
push dword [ebp - 0x70]
push 0x2000
push dword [ebp - 0x94]
push dword [ebp - 0x74]
call fcn.0040f201
add esp, 0x20
mov edi, eax
test eax, eax
jle 0x4110d7
add dword [ebp - 0x68], eax
cmp dword [ebp - 0xa4], 0
mov eax, 0xc
cmove eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0x44]
test eax, eax
jle 0x411099
push edx
push edi
push dword [ebp - 0x94]
push eax
call fcn.0040f67e
mov eax, dword [ebp - 0x58]
add esp, 0x10
test eax, eax
je 0x411099
cmp eax, dword [ebp - 0x68]
jg 0x411099
push eax
push eax
lea eax, [ebx + 0x88]
push eax
push dword [ebp - 0x44]
call fcn.0040f6bb
mov dword [ebp - 0x44], 0
add esp, 0x10
test eax, eax
jg 0x4110b8
push dword [ebp - 0x6c]
push edi
push dword [ebp - 0x94]
push ebx
call fcn.0040f250
add esp, 0x10
test eax, eax
jns 0x4110c1
mov eax, dword [0x42e680]
mov dword [ebp - 0x24], eax
mov dword [ebx + 0x6c], 0
jmp 0x4110d7
cmp dword [ebp - 0x74], 0
je 0x410ff9
mov ecx, ebx
call fcn.0040b236
jmp 0x410ff9
mov eax, dword [ebp - 0x58]
test eax, eax
jle 0x4111ec
cmp eax, dword [ebp - 0x68]
jle 0x4111ec
mov eax, dword [0x42e680]
cmp dword [ebp - 0x24], eax
jge 0x4111ec
mov eax, dword [ebp - 0x94]
mov byte [eax], 0
mov eax, dword [ebp - 0x60]
test eax, eax
jle 0x41111b
sub esp, 0xc
push eax
call fcn.0040bf04
mov dword [ebp - 0x60], 0
jmp 0x411148
mov esi, dword [ebp - 0x9c]
push eax
push dword [ebp - 0x68]
mov eax, dword [ebx + 0x60]
push str.Range:_bytes_u__r_n_r_n
lea eax, [esi + eax - 2]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
mov edx, dword [ebx + 0x60]
lea eax, [edx + eax - 2]
mov dword [ebp - 0xac], eax
mov dword [ebx + 0x60], eax
mov eax, dword [ebp - 0x30]
inc dword [ebp - 0x24]
add esp, 0x10
test eax, eax
je 0x411158
mov byte [eax], 0
mov eax, dword [ebp - 0x70]
test eax, eax
jle 0x411173
sub esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x70], 0
add esp, 0xc
mov eax, dword [ebp - 0x74]
test eax, eax
jle 0x41118d
sub esp, 0xc
push eax
call fcn.0040bf04
mov dword [ebp - 0x74], 0
add esp, 0x10
push dword [ebp - 0x58]
push dword [ebp - 0x68]
push str.Broken.__u_of__u_loaded._Try_continue...
push dword [0x464464]
call fcn.0040423a
add esp, 0x10
mov dword [ebp - 0xa4], 0
jmp 0x410119
cmp dword [ebp - 0xc8], 0
je 0x4111d0
push eax
push eax
push 0x10
push str.HTTP_1.0_304_r_n_r_n
mov ecx, ebx
call fcn.0042d768
jmp 0x4111e3
push edi
push edi
push 0x190
push str.Error._Cant_connect...
mov ecx, ebx
call fcn.0040b1ae
pop ecx
pop esi
mov dword [ebx + 0x6c], 0
mov eax, dword [ebp - 0x60]
test eax, eax
jle 0x4111ff
sub esp, 0xc
push eax
call fcn.0040bf04
add esp, 0x10
mov ecx, ebx
call fcn.00425118
mov eax, dword [ebp - 0x70]
test eax, eax
jle 0x41121a
sub esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0xc
mov eax, dword [ebp - 0x6c]
test eax, eax
jle 0x41124e
sub esp, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x46d954]
add esp, 0xc
test eax, eax
je 0x41124e
cmp eax, dword [ebp - 0x68]
jae 0x41124e
sub esp, 0xc
push dword [ebp - 0xbc]
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
add esp, 0xc
mov eax, dword [ebp - 0x44]
test eax, eax
jle 0x411267
push edx
push edx
lea edx, [ebx + 0x88]
push edx
push eax
call fcn.0040f6bb
add esp, 0x10
mov edx, dword [ebp - 0x3c]
mov eax, 0x44115f
test edx, edx
je 0x411276
lea eax, [edx + 5]
sub esp, 0xc
push eax
push dword [ebp - 0x64]
push dword [ebx + 0x74]
push 0x44171b
push dword [ebp - 0x9c]
call dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [ebx + 0x10]
add esp, 0x14
push str.___.256s_r_n
push eax
push dword [ebx]
push dword [ebp - 0x9c]
push dword [0x464464]
call fcn.00403f0e
mov eax, dword [ebp - 0x74]
add esp, 0x20
test eax, eax
jle 0x4112d3
cmp dword [ebx + 0x6c], 0
jne 0x4112d3
sub esp, 0xc
push eax
call fcn.0040bf04
mov dword [ebx + 0x50], 0
add esp, 0x10
xor eax, eax
jmp 0x411302
cmp dword [ebp - 0xb4], 0x12b
mov eax, dword [ebp - 0xb0]
jle 0x411013
cmp dword [ebp - 0x34], 0
mov eax, 3
cmovne eax, dword [ebp - 0xb0]
jmp 0x411013
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret