Function at 0x401596
Capabilities:
Reference http user-agent string

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x74
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
push 8
call fcn.0041832e
add esp, 4
mov dword [ebp - 0x3c], eax
mov edi, eax
mov esi, 0x4ba031
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [0x5be648]
call fcn.004011f8
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0
jle 0x4022e8
push 0x80000301
push 0
push dword [0x5be654]
push 1
mov eax, 3
mov ebx, 0x489230
call fcn.00418364
add esp, 0x10
mov ebx, dword [0x5be648]
call fcn.00401211
mov eax, 0
cmp eax, ecx
jl 0x401679
push 1
call fcn.0041833a
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
mov eax, dword [ebx]
test eax, eax
je 0x40169f
push eax
mov ebx, eax
call fcn.004010bb
inc eax
push eax
call fcn.0041832e
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x4016b0
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 4], eax
push 0x5be648
push 4
mov eax, 2
call fcn.00418328
add esp, 8
mov ebx, dword [0x5be648]
mov dword [ebp - 0x44], ebx
call fcn.00401211
mov dword [ebp - 0x48], ecx
sub ecx, 0
jle 0x40176e
cmp ecx, 1
jle 0x4016ec
mov ecx, 1
mov dword [ebp - 0x40], ecx
cmp dword [ebp - 0x40], 0
jle 0x40176e
mov edi, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x48]
mov dword [edi], 1
add edi, 4
mov eax, ecx
sub eax, dword [ebp - 0x40]
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40171a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x44]
add edi, 8
mov ecx, dword [ebp - 0x40]
mov ebx, edi
push edi
push ecx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x401737
push ebx
call fcn.00418334
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x401726
pop edi
mov eax, dword [ebp - 0x40]
shl eax, 2
mov esi, edi
add esi, eax
mov ecx, dword [ebp - 0x48]
sub ecx, 0
sub ecx, dword [ebp - 0x40]
rep movsd dword es:[edi], dword [esi]
sub edi, dword [ebp - 0x44]
push edi
push dword [ebp - 0x44]
call fcn.00418358
add esp, 8
mov dword [0x5be648], eax
mov eax, dword [ebp - 0x40]
jmp 0x401770
xor eax, eax
push 0x80000301
push 0
push dword [0x5be654]
push 1
mov eax, 3
mov ebx, 0x489250
call fcn.00418364
add esp, 0x10
call fcn.00402782
mov dword [ebp - 0x40], eax
push dword [ebp - 0x40]
push str.https:__fmipalcweb.icloud.com_fmipalcservice_client_getCaptchaImage_rnd
mov ecx, 2
call fcn.0040149d
add esp, 8
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4017c4
push ebx
call fcn.00418334
add esp, 4
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x4c], 0
push 0
lea eax, [ebp - 0x4c]
push eax
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], 0
push 0
push dword [ebp - 0x54]
mov dword [ebp - 0x58], 0
push 0
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x5c], 0
push 0
lea eax, [ebp - 0x5c]
push eax
mov dword [ebp - 0x60], 0
push 0
lea eax, [ebp - 0x60]
push eax
push 1
mov eax, str.Accept:___r_nOrigin:_https:__www.icloud.com_r_nAccept_Language:_zh_CN_r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0__r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 0x68], 0
push 0
lea eax, [ebp - 0x68]
push eax
mov dword [ebp - 0x6c], 0
push 0
push dword [ebp - 0x6c]
lea eax, [ebp - 0x44]
push eax
call fcn.00402bf4
mov dword [ebp - 0x70], eax
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x401876
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x401889
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x40189c
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x4018ac
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x4018bc
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x4018cc
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x4018dc
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4018ec
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4018fc
push ebx
call fcn.00418334
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x70]
test eax, eax
jne 0x401912
mov eax, 0x4ba031
push eax
push 1
mov ebx, 0x419c90
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x74], eax
mov ebx, dword [ebp - 0x70]
test ebx, ebx
je 0x40193e
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x74]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x401955
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov eax, 0x4ba039
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x48]
push eax
mov eax, str.data:image_jpeg_base64_
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00403ec6
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x4019a5
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x4019b5
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x4019c9
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
lea eax, [ebp - 0xc]
push eax
call fcn.00405da5
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4019f9
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x10], eax
push 0
push dword [ebp - 0x10]
push 0xffffffffffffffff
push 0xa
push 0x16011d6b
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0xffffffffffffffff
push 0xa
push 0x16011d6b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x401a44
mov eax, 0x4ba031
push eax
push 1
mov ebx, 0x418930
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x401a6a
push ebx
call fcn.00418334
add esp, 4
push 0xffffffffffffffff
push 0xa
push 0x16011d6b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x48], eax
push 0xffffffffffffffff
push 8
push 0x16011c44
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x4c], eax
push 0xffffffffffffffff
push 8
push 0x16011c42
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, str.zhaobin
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x44]
lea eax, [ebp - 0x48]
push eax
call fcn.0040679f
mov dword [ebp - 0x58], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x401af0
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x401b00
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x401b10
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x401b20
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x58]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x401b34
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
push 0x4ba05b
push dword [ebp - 0x14]
call fcn.004014f9
add esp, 8
cmp eax, 0
jne 0x4022e8
push 0
push dword [ebp - 0x18]
push 0xffffffffffffffff
push 8
push 0x16011d6c
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0x80000301
push 0
push 0xbb8
push 1
mov eax, 4
mov ebx, 0x489390
call fcn.00418364
add esp, 0x10
mov eax, dword [ebp - 4]
test eax, eax
je 0x401bab
push eax
mov ebx, eax
call fcn.004010bb
inc eax
push eax
call fcn.0041832e
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x401bbc
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov eax, 0x4ba039
mov dword [ebp - 0x48], eax
lea eax, [ebp - 0x48]
push eax
mov eax, str._captchaContext_:_id_:_
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00403ec6
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x401c0c
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x401c1c
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x401c30
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x40], 0
push 0
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x4c], 0
push 0
lea eax, [ebp - 0x4c]
push eax
push 1
lea eax, [ebp - 0x18]
push eax
push 1
mov eax, 0x4ba07a
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x50]
push eax
push 1
lea eax, [ebp - 0x24]
push eax
push 1
mov eax, 0x4ba081
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x20]
push eax
mov eax, 0x4ba088
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x5c], 0
push 0
push dword [ebp - 0x5c]
mov dword [ebp - 0x60], 0
push 0
push dword [ebp - 0x60]
mov dword [ebp - 0x64], 0
push 0
push dword [ebp - 0x64]
mov eax, str._deviceId_:_
mov dword [ebp - 0x68], eax
lea eax, [ebp - 0x68]
push eax
call fcn.00406b71
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x401cfa
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x401d0a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x401d1a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x401d2a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x401d3a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x401d4a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x401d5a
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x401d6a
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x401d81
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x401d98
mov eax, 0x4b9f10
push eax
push 1
mov ebx, 0x419850
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], 0
push 0
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], 0
push 0
lea eax, [ebp - 0x48]
push eax
push 1
lea eax, [ebp - 0x40]
push eax
mov dword [ebp - 0x4c], 0
push 0
push dword [ebp - 0x4c]
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
push 1
mov eax, str.Accept:___r_nOrigin:_https:__www.icloud.com_r_nAccept_Language:_zh_CN_r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0__r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x58], 0
push 0
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 0x5c], 0
push 0
lea eax, [ebp - 0x5c]
push eax
mov dword [ebp - 0x60], 0
push 0
lea eax, [ebp - 0x60]
push eax
push 1
push 1
mov eax, str.https:__fmipalcweb.icloud.com_fmipalcservice_client_checkActivationLock
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x64]
push eax
call fcn.00402bf4
mov dword [ebp - 0x68], eax
mov ebx, dword [ebp - 0x64]
test ebx, ebx
je 0x401e53
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x401e63
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x401e73
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x401e83
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x401e93
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x401ea3
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x401eb3
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x401ec3
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x401ed3
push ebx
call fcn.00418334
add esp, 4
push reloc.WS2_32.dll_getpeername
push 0
mov eax, dword [ebp - 0x68]
test eax, eax
jne 0x401ee9
mov eax, 0x4ba031
push eax
push 1
mov ebx, 0x419c90
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x6c], eax
mov ebx, dword [ebp - 0x68]
test ebx, ebx
je 0x401f15
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x6c]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x401f2c
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 8], eax
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push str._statusCode_:_403_
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x401f61
mov eax, 0x4b9f10
push eax
push 4
mov ebx, 0x418d60
call fcn.00418346
add esp, 0x34
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xffffffff
je 0x401fce
mov eax, 0x4ba135
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x401f97
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
push 0x4b9f1c
push dword [ebp - 4]
push dword [ebp - 0x30]
mov ecx, 3
call fcn.0040149d
add esp, 0xc
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x401fca
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push str._locked_:true__type_:_
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x401fff
mov eax, 0x4b9f10
push eax
push 4
mov ebx, 0x418d60
call fcn.00418346
add esp, 0x34
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xffffffff
je 0x40203e
mov eax, 0x4ba15a
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x402035
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
jmp 0x402156
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push str._locked_:false__type_:_SN__
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x40206f
mov eax, 0x4b9f10
push eax
push 4
mov ebx, 0x418d60
call fcn.00418346
add esp, 0x34
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0xffffffff
jne 0x4020e4
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push str._locked_:false__type_:_IMEI__
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x4020c0
mov eax, 0x4b9f10
push eax
push 4
mov ebx, 0x418d60
call fcn.00418346
add esp, 0x34
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 0xffffffff
jne 0x4020e4
xor eax, eax
jmp 0x4020e9
mov eax, 1
test eax, eax
je 0x402156
mov eax, 0x4ba199
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x402107
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
push 0x4b9f1c
push dword [ebp - 0x2c]
push 0x4ba19e
push dword [ebp - 0x34]
push 0x4ba19e
push dword [ebp - 4]
push dword [0x5be658]
mov ecx, 7
call fcn.0040149d
add esp, 0x1c
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [0x5be658]
test ebx, ebx
je 0x402150
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [0x5be658], eax
push 0x4ba135
push dword [ebp - 0x2c]
call fcn.004014f9
add esp, 8
cmp eax, 0
je 0x402297
mov ebx, 0x12
call fcn.00401182
push 0x20004
push 0x16010036
push 0x52010001
push 7
mov eax, 1
mov ebx, 0x480b00
call fcn.00418364
add esp, 0x58
mov dword [ebp - 0x38], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 4]
test eax, eax
jne 0x4021b5
mov eax, 0x4b9f10
push eax
push 0x80000301
push 0
push 0
push 0x80000301
push 0
push dword [ebp - 0x38]
push 0x20004
push 0x16010036
push 0x52010001
push 4
mov eax, 1
mov ebx, 0x480ae0
call fcn.00418364
add esp, 0x34
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x402205
mov eax, 0x4b9f10
push eax
push 0x80000301
push 0
push 1
push 0x80000301
push 0
push dword [ebp - 0x38]
push 0x20004
push 0x16010036
push 0x52010001
push 4
mov eax, 1
mov ebx, 0x480ae0
call fcn.00418364
add esp, 0x34
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x2c]
test eax, eax
jne 0x402255
mov eax, 0x4b9f10
push eax
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push dword [ebp - 0x38]
push 0x20004
push 0x16010036
push 0x52010001
push 4
mov eax, 1
mov ebx, 0x480ae0
call fcn.00418364
add esp, 0x34
jmp 0x4022e8
push 0x4ba135
push dword [ebp - 0x2c]
call fcn.004014f9
add esp, 8
cmp eax, 0
jne 0x4022e8
push 0x4b9f1c
push dword [ebp - 4]
push dword [ebp - 0x30]
mov ecx, 3
call fcn.0040149d
add esp, 0xc
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4022df
push ebx
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
jmp 0x4022e8
push 0
push dword [ebp - 4]
push 0xffffffffffffffff
push 8
push 0x160120ca
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x40232f
mov eax, 0x4b9f10
push eax
push 1
mov ebx, 0x418f30
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402358
push ebx
call fcn.00418334
add esp, 4
fld qword [ebp - 0x48]
fsub qword [0x4ba1a3]
fstp qword [ebp - 0x50]
push 0x80000601
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
push 1
mov ebx, 0x419c90
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x54], eax
push 0
push dword [ebp - 0x54]
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.00418352
add esp, 0x18
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x4023af
push ebx
call fcn.00418334
add esp, 4
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push 0x4ba1ab
push dword [ebp - 0x40]
push 0x4ba1ae
mov ecx, 3
call fcn.0040149d
add esp, 0xc
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4023f5
push ebx
call fcn.00418334
add esp, 4
push 0
push dword [ebp - 0x44]
push 0xffffffffffffffff
push 8
push 0x160120cb
push 0x52010001
call fcn.00418352
add esp, 0x18
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x402420
push ebx
call fcn.00418334
add esp, 4
dec dword [0x5be64c]
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x402452
mov eax, 0x4b9f10
push eax
push 1
mov ebx, 0x418f30
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x40247b
push ebx
call fcn.00418334
add esp, 4
fld qword [ebp - 0x48]
ftst
fnstsw ax
test ah, 1
je 0x402489
fchs
fcomp qword [0x4ba1b5]
fnstsw ax
test ah, 0x41
je 0x402669
push 0
push 0x4ba1bd
push 0xffffffffffffffff
push 0xa
push 0x1601217b
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0
push 0
push 0xffffffffffffffff
push 6
push 0x1601217b
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0
push dword [ebp - 0x30]
push 0xffffffffffffffff
push 8
push 0x16010015
push 0x52010001
call fcn.00418352
add esp, 0x18
push 0xffffffffffffffff
push 8
push 0x16010015
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push 0
push 0
push 0
push reloc.WS2_32.dll_connect
push 0
push 0x4b9f1c
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x40252d
mov eax, 0x4b9f10
push eax
push 3
mov ebx, 0x4196c0
call fcn.00418346
add esp, 0x28
mov dword [ebp - 0x44], eax
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402553
push ebx
call fcn.00418334
add esp, 4
mov eax, dword [ebp - 0x44]
push eax
mov ebx, dword [ebp - 0x3c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402575
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402571
imul eax, dword [ebx]
jmp 0x402566
mov ecx, eax
test ecx, ecx
je 0x402594
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40258d
push ebx
push eax
call fcn.00418334
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40257b
call fcn.00418334
add esp, 4
pop eax
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x3c]
call fcn.004011f8
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x419c90
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x44], eax
push 0
push dword [ebp - 0x44]
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.00418352
add esp, 0x18
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x4025f0
push ebx
call fcn.00418334
add esp, 4
push 0xffffffffffffffff
push 8
push 0x16011c3b
push 0x52010001
call fcn.0041834c
add esp, 0x10
mov dword [ebp - 0x40], eax
push reloc.WS2_32.dll_connect
push 0
mov eax, dword [ebp - 0x40]
test eax, eax
jne 0x40261c
mov eax, 0x4b9f10
push eax
push 1
mov ebx, 0x418f30
call fcn.00418346
add esp, 0x10
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x402645
push ebx
call fcn.00418334
add esp, 4
fld qword [ebp - 0x48]
ftst
fnstsw ax
test ah, 1
je 0x402653
fchs
fcomp qword [0x4ba1b5]
fnstsw ax
test ah, 0x41
jne 0x402669
call fcn.0040118a
mov ebx, dword [ebp - 4]
test ebx, ebx
je 0x402679
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402689
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x402699
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4026a9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x4026b9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4026c9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4026d9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4026e9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x4026f9
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x402709
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x402719
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x402729
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x402739
push ebx
call fcn.00418334
add esp, 4
mov ebx, dword [ebp - 0x3c]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402757
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402753
imul eax, dword [ebx]
jmp 0x402748
mov ecx, eax
test ecx, ecx
je 0x402776
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40276f
push ebx
push eax
call fcn.00418334
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40275d
call fcn.00418334
add esp, 4
mov esp, ebp
pop ebp
ret