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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
push 0x1c
call fcn.0041bc61
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
mov dword [ebp - 8], 0
push 0x18
call fcn.0041bc61
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
mov dword [ebx], 0x4f480d
push ebx
add ebx, 0x14
push ebx
push 8
call fcn.0041bc61
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
pop ebx
push ebx
mov eax, esp
push eax
call fcn.004086a9
pop ebx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
push 4
call fcn.0041bc61
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx], 0x4f486d
push ebx
mov eax, esp
push eax
call fcn.004086e9
pop ebx
push 8
call fcn.0041bc61
add esp, 4
mov dword [ebp - 0x1c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 8
call fcn.0041bc61
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 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
mov ebx, dword [ebp - 4]
add ebx, 4
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp + 8]
mov eax, dword [ebx]
test eax, eax
je 0x406951
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406964
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 8
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
je 0x406991
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4069a4
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push dword [ebp + 0xc]
call fcn.00408076
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
push dword [ebp + 8]
call fcn.0040850e
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4069d4
push ebx
call fcn.0041bc5b
add esp, 4
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
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
push dword [ebp - 0x50]
mov dword [ebp - 0x54], 0
push 0
lea eax, [ebp - 0x54]
push eax
push 1
mov eax, str.Accept:___r_nJS_Framework:_Basis_r_nContent_Type:_text_xml_charsetutf_8_r_nSOAPAction:_Wallet.Security.WebService_GetSessionTicket_r_nReferer:_https:__www.walletone.com_client__r_nAccept_Language:_zh_cn_r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0__r_nHost:_www.walletone.com_r_nContent_Length:_772_r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache_r_n
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x58]
push eax
push 1
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x5c], 0
push 0
lea eax, [ebp - 0x5c]
push eax
push 1
lea eax, [ebp - 0x40]
push eax
push 1
mov eax, 0x4f45bb
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x60]
push eax
push 0x567134
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [ebp - 0x64], eax
mov ebx, dword [ebp - 0x60]
test ebx, ebx
je 0x406a6e
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x406a7e
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x406a8e
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x406a9e
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x406aae
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x4c]
test ebx, ebx
je 0x406abe
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x406ace
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x64]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x406ae2
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov eax, 0x4bd735
xor ecx, ecx
test eax, eax
je 0x406af4
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 8]
xor ebx, ebx
test eax, eax
je 0x406b05
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x406b1c
dec eax
test ecx, ecx
je 0x406b1c
call fcn.0040675f
add esp, 0xc
test eax, eax
jne 0x406c2f
mov ebx, dword [ebp - 4]
add ebx, 0x18
mov dword [ebp - 0x3c], ebx
mov eax, 0x4bd732
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b48
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f45c0
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b6f
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406ba8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406bc7
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406be6
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406c05
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406c26
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push 1
mov eax, str.utf_8
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
push 1
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x406c64
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x406c78
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
push 0
push 0
push 0
push getpeername
push 0
push str.MSXML2.DOMDocument
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x4206d0
call fcn.0041bc73
add esp, 0x28
mov ebx, dword [ebp - 4]
add ebx, 0x18
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x406ccf
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406ce2
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xa0000004
push 0
lea eax, [ebp - 0x14]
push eax
push getpeername
push 0
push str.loadXML
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f550
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x406e09
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f45ee
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406d49
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406d82
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406da1
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406dc0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406ddf
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x406e00
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push getpeername
push 0
push str.faultstring
push getpeername
push 0
push str.getElementsByTagName
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f580
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
call fcn.00401168
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x406f7a
fild dword [ebp - 0x24]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fsub qword [0x4f4183]
fstp qword [ebp - 0x48]
push 0x80000601
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push getpeername
push 0
push str.item
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f430
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x4c], eax
push 0
push 0
push 0
push getpeername
push 0
push str.text
push 0x10030
push 0
push dword [ebp - 0x4c]
push 3
mov ebx, 0x41f3d0
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x406f6e
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x28], eax
pop eax
pop ebx
pop ecx
jmp 0x406eb0
add esp, 0xc
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
fcomp qword [0x4f4634]
fnstsw ax
test ah, 0x41
jne 0x4071dc
push reloc.OLEAUT32.dll_SysReAllocString
push 0
push 0
push 0
push 0
push 0
push getpeername
push 0
push 0x4f463c
push getpeername
push 0
mov eax, dword [ebp - 0x28]
test eax, eax
jne 0x406ff6
mov eax, 0x4bd732
push eax
push 4
mov ebx, 0x41c5e0
call fcn.0041bc73
add esp, 0x34
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jge 0x4070fb
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push dword [ebp - 0x28]
push 0x4f464f
mov ecx, 2
call fcn.0040106f
add esp, 8
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40704d
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push str..xml
mov ebx, dword [ebp + 8]
push dword [ebx]
push dword [0x567170]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x3c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x407086
mov eax, 0x4bd732
push eax
push 1
mov ebx, 0x41d330
call fcn.0041bc73
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 0x4070af
mov eax, 0x4bd735
push eax
push getpeername
push 0
mov eax, dword [ebp - 0x3c]
test eax, eax
jne 0x4070c3
mov eax, 0x4bd732
push eax
push 2
mov ebx, 0x41dc50
call fcn.0041bc73
add esp, 0x1c
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4070e6
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4070f6
push ebx
call fcn.0041bc5b
add esp, 4
jmp 0x407122
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f465e
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40711c
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407155
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407174
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407193
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4071b2
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4071d3
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push getpeername
push 0
push str.SessionUserId
push getpeername
push 0
push str.getElementsByTagName
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f580
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
call fcn.00401168
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40734d
fild dword [ebp - 0x24]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fsub qword [0x4f4183]
fstp qword [ebp - 0x48]
push 0x80000601
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push getpeername
push 0
push str.item
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f430
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x4c], eax
push 0
push 0
push 0
push getpeername
push 0
push str.text
push 0x10030
push 0
push dword [ebp - 0x4c]
push 3
mov ebx, 0x41f3d0
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x407341
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x2c], eax
pop eax
pop ebx
pop ecx
jmp 0x407283
add esp, 0xc
push getpeername
push 0
push str.SessionKey
push getpeername
push 0
push str.getElementsByTagName
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f580
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
call fcn.00401168
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4074c1
fild dword [ebp - 0x24]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fsub qword [0x4f4183]
fstp qword [ebp - 0x48]
push 0x80000601
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push getpeername
push 0
push str.item
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f430
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x4c], eax
push 0
push 0
push 0
push getpeername
push 0
push str.text
push 0x10030
push 0
push dword [ebp - 0x4c]
push 3
mov ebx, 0x41f3d0
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4074b5
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x30], eax
pop eax
pop ebx
pop ecx
jmp 0x4073f7
add esp, 0xc
push 0x4bd732
push dword [ebp - 0x2c]
call fcn.004010cb
add esp, 8
cmp eax, 0
je 0x4074fa
push 0x4bd732
push dword [ebp - 0x30]
call fcn.004010cb
add esp, 8
cmp eax, 0
je 0x4074fa
xor eax, eax
jmp 0x4074ff
mov eax, 1
test eax, eax
je 0x40768b
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f4680
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407528
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push str..xml
mov ebx, dword [ebp + 8]
push dword [ebx]
push dword [0x567170]
mov ecx, 3
call fcn.0040106f
add esp, 0xc
mov dword [ebp - 0x3c], eax
push getpeername
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x407561
mov eax, 0x4bd732
push eax
push 1
mov ebx, 0x41d330
call fcn.0041bc73
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 0x40758a
mov eax, 0x4bd735
push eax
push getpeername
push 0
mov eax, dword [ebp - 0x3c]
test eax, eax
jne 0x40759e
mov eax, 0x4bd732
push eax
push 2
mov ebx, 0x41dc50
call fcn.0041bc73
add esp, 0x1c
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x4075c1
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x40]
test ebx, ebx
je 0x4075d1
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407604
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407623
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407642
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407661
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407682
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
lea eax, [ebp - 0x30]
push eax
call fcn.00408639
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
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
push dword [ebp - 0x4c]
mov dword [ebp - 0x50], 0
push 0
lea eax, [ebp - 0x50]
push eax
push 1
mov eax, str.Accept:___r_nJS_Framework:_Basis_r_nContent_Type:_text_xml_charsetutf_8_r_nSOAPAction:_Wallet.Processing.WebService_GetUserBalance_r_nReferer:_https:__www.walletone.com_client__r_nAccept_Language:_zh_cn_r_nUser_Agent:_Mozilla_5.0__compatible__MSIE_9.0__Windows_NT_6.1__WOW64__Trident_5.0__r_nHost:_www.walletone.com_r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache_r_n
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x58], 0
push 0
lea eax, [ebp - 0x58]
push eax
push 1
lea eax, [ebp - 0x10]
push eax
push 1
lea eax, [ebp - 0x3c]
push eax
push 1
mov eax, 0x4f45bb
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x5c]
push eax
push 0x567138
lea eax, [ebp - 0xc]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [ebp - 0x60], eax
mov ebx, dword [ebp - 0x5c]
test ebx, ebx
je 0x407731
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x407741
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x58]
test ebx, ebx
je 0x407751
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x54]
test ebx, ebx
je 0x407761
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x50]
test ebx, ebx
je 0x407771
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x407781
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x407791
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x60]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4077a5
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 8], eax
mov eax, 0x4bd735
xor ecx, ecx
test eax, eax
je 0x4077b7
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov eax, dword [ebp - 8]
xor ebx, ebx
test eax, eax
je 0x4077c8
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x4077df
dec eax
test ecx, ecx
je 0x4077df
call fcn.0040675f
add esp, 0xc
test eax, eax
jne 0x4078f2
mov ebx, dword [ebp - 4]
add ebx, 0x18
mov dword [ebp - 0x3c], ebx
mov eax, 0x4bd732
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40780b
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f45c0
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407832
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40786b
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40788a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4078a9
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4078c8
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4078e9
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push 1
mov eax, str.utf_8
mov dword [ebp - 0x3c], eax
lea eax, [ebp - 0x3c]
push eax
push 1
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x10]
mov dword [ebp - 0x40], eax
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x407927
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40793b
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 4]
add ebx, 0x18
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x407964
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407977
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
push 0xa0000004
push 0
lea eax, [ebp - 0x14]
push eax
push getpeername
push 0
push str.loadXML
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f550
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0
jne 0x407a9e
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f45ee
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4079de
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a17
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a36
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a55
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a74
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a95
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push getpeername
push 0
push 0x4f47f4
push getpeername
push 0
push str.getElementsByTagName
push 0x10030
push 0
push dword [ebp - 0x1c]
push 3
mov ebx, 0x41f580
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
ftst
fnstsw ax
test ah, 1
je 0x407b42
fchs
fcomp qword [0x4f4634]
fnstsw ax
test ah, 0x41
je 0x407c34
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
mov eax, 0x4f47fb
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407b74
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407bad
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407bcc
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407beb
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407c0a
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407c2b
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
fld qword [ebp - 0x48]
call fcn.00401168
xor ecx, ecx
push eax
lea eax, [ebp - 0x24]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x407d81
fild dword [ebp - 0x24]
fstp qword [ebp - 0x40]
fld qword [ebp - 0x40]
fsub qword [0x4f4183]
fstp qword [ebp - 0x48]
push 0x80000601
push dword [ebp - 0x44]
push dword [ebp - 0x48]
push getpeername
push 0
push str.item
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f430
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x4c], eax
push 0
push 0
push 0
push getpeername
push 0
push str.text
push 0x10030
push 0
push dword [ebp - 0x4c]
push 3
mov ebx, 0x41f3d0
call fcn.0041bc73
add esp, 0x28
mov dword [ebp - 0x50], eax
mov ebx, dword [ebp - 0x4c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x407d37
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov dword [ebp - 0x34], eax
push getpeername
push 0
mov eax, dword [ebp - 0x34]
test eax, eax
jne 0x407d4e
mov eax, 0x4bd732
push eax
push 1
mov ebx, 0x41cb80
call fcn.0041bc73
add esp, 0x10
mov dword [ebp - 0x3c], eax
fld dword [ebp - 0x38]
fadd dword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
fstp dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], eax
pop eax
pop ebx
pop ecx
jmp 0x407c79
add esp, 0xc
mov ebx, dword [ebp - 4]
add ebx, 0x10
mov dword [ebp - 0x3c], ebx
push 0
push 0
push 0
push getpeername
push 0
push str.length
push 0x10030
push 0
push dword [ebp - 0x20]
push 3
mov ebx, 0x41f520
call fcn.0041bc73
add esp, 0x28
push 0x80000601
push edx
push eax
push 1
mov ebx, 0x41d730
call fcn.0041bc73
add esp, 0x10
mov dword [ebp - 0x48], eax
push 0x4f4804
push dword [ebp - 0x48]
mov ecx, 2
call fcn.0040106f
add esp, 8
mov dword [ebp - 0x4c], eax
mov ebx, dword [ebp - 0x48]
test ebx, ebx
je 0x407dff
push ebx
call fcn.0041bc5b
add esp, 4
mov eax, dword [ebp - 0x4c]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407e15
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
add ebx, 0xc
mov dword [ebp - 0x3c], ebx
push 0x80000501
push 0
push dword [ebp - 0x38]
push 1
mov ebx, 0x41d730
call fcn.0041bc73
add esp, 0x10
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0x3c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407e59
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x3c], ebx
mov ebx, dword [ebp - 0x3c]
mov dword [ebx], 1
mov eax, dword [ebp - 4]
push eax
push 0x1c
call fcn.0041bc61
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ea1
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ec0
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407edf
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407efe
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407f1f
push eax
mov ebx, eax
call fcn.00401004
inc eax
push eax
call fcn.0041bc61
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
jmp 0x407f28
push eax
mov ebx, dword [ebp - 4]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f40
push ebx
call fcn.0041bc5b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f54
push ebx
call fcn.0041bc5b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f68
push ebx
call fcn.0041bc5b
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f7c
push ebx
call fcn.0041bc5b
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407f90
push ebx
call fcn.0041bc5b
add esp, 4
pop ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x407fa9
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x407fc9
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x407fd9
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
push 0x10030
push 0
push ebx
push 1
mov ebx, 0x4206a0
call fcn.0041bc73
add esp, 0x10
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x40803f
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40804f
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40805f
push ebx
call fcn.0041bc5b
add esp, 4
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40806f
push ebx
call fcn.0041bc5b
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 8