Function at 0x40c080
Capabilities:
Check if file exists

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43f145
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x300
mov eax, dword [0x44e040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, edx
mov dword [ebp - 0x1d4], esi
mov dword [ebp - 0x1d0], ecx
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x170], 0
push 0x448ee8
lea ecx, [ebp - 0x180]
mov dword [ebp - 0x16c], 0
movups xmmword [ebp - 0x180], xmm0
call fcn.00407540
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1c8]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x1b8], 0
push 0x448ee8
movups xmmword [ebp - 0x1c8], xmm0
mov dword [ebp - 0x1b4], 0
call fcn.00407540
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x150]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x140], 0
push 0x448ee8
movups xmmword [ebp - 0x150], xmm0
mov dword [ebp - 0x13c], 0
call fcn.00407540
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x168]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x158], 0
push 0x448ee8
movups xmmword [ebp - 0x168], xmm0
mov dword [ebp - 0x154], 0
call fcn.00407540
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1b0]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x1a0], 0
push 0x448ee8
movups xmmword [ebp - 0x1b0], xmm0
mov dword [ebp - 0x19c], 0
call fcn.00407540
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x198]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x188], 0
push 0x448ee8
movups xmmword [ebp - 0x198], xmm0
mov dword [ebp - 0x184], 0
call fcn.00407540
push 0x100
lea eax, [ebp - 0x120]
mov byte [ebp - 4], 5
xorps xmm0, xmm0
push 0
push eax
movlpd qword [ebp - 0x1c], xmm0
call fcn.00420d70
add esp, 0xc
mov dword [ebp - 0x128], 0
xorps xmm0, xmm0
mov dword [ebp - 0x124], 0
lea ecx, [ebp - 0x138]
movups xmmword [ebp - 0x138], xmm0
push 0
push 0x448c6c
call fcn.00407960
lea eax, [ebp - 0x198]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x150]
push eax
lea edx, [ebp - 0x1c8]
lea ecx, [ebp - 0x180]
call fcn.0040b5e0
add esp, 0x10
push 8
push str.channel
push ecx
lea ecx, [ebp - 0x180]
call fcn.0040ebd0
mov ecx, dword [ebp - 0x1b8]
mov edi, bind
mov eax, edi
sub eax, ecx
cmp eax, 9
jb 0x40d19d
cmp dword [ebp - 0x1b4], 7
lea eax, [ebp - 0x1c8]
push ecx
cmova eax, dword [ebp - 0x1c8]
push eax
push 9
push str.localid
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x220]
call fcn.004089f0
mov byte [ebp - 4], 7
lea eax, [ebp - 0x220]
cmp dword [ebp - 0x20c], 7
lea ecx, [ebp - 0x180]
push dword [ebp - 0x210]
cmova eax, dword [ebp - 0x220]
push eax
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x20c]
cmp ecx, 7
jbe 0x40c351
mov edx, dword [ebp - 0x220]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c347
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x140]
xor eax, eax
mov word [ebp - 0x220], ax
mov eax, edi
sub eax, ecx
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x20c], 7
cmp eax, 9
jb 0x40d19d
cmp dword [ebp - 0x13c], 7
lea eax, [ebp - 0x150]
push ecx
cmova eax, dword [ebp - 0x150]
push eax
push 9
push str.valueid
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x238]
call fcn.004089f0
mov byte [ebp - 4], 8
lea eax, [ebp - 0x238]
cmp dword [ebp - 0x224], 7
lea ecx, [ebp - 0x180]
push dword [ebp - 0x228]
cmova eax, dword [ebp - 0x238]
push eax
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x224]
cmp ecx, 7
jbe 0x40c41b
mov edx, dword [ebp - 0x238]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c411
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x158]
xor eax, eax
mov word [ebp - 0x238], ax
mov eax, edi
sub eax, ecx
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 7
cmp eax, 0xa
jb 0x40d19d
cmp dword [ebp - 0x154], 7
lea eax, [ebp - 0x168]
push ecx
cmova eax, dword [ebp - 0x168]
push eax
push 0xa
push str.username
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x250]
call fcn.004089f0
mov byte [ebp - 4], 9
lea eax, [ebp - 0x250]
cmp dword [ebp - 0x23c], 7
lea ecx, [ebp - 0x180]
push dword [ebp - 0x240]
cmova eax, dword [ebp - 0x250]
push eax
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x23c]
cmp ecx, 7
jbe 0x40c4e5
mov edx, dword [ebp - 0x250]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c4db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x1a0]
xor eax, eax
mov word [ebp - 0x250], ax
mov eax, edi
sub eax, ecx
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 7
cmp eax, 7
jb 0x40d19d
cmp dword [ebp - 0x19c], 7
lea eax, [ebp - 0x1b0]
push ecx
cmova eax, dword [ebp - 0x1b0]
push eax
push 7
push str.brver
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x268]
call fcn.004089f0
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x268]
cmp dword [ebp - 0x254], 7
lea ecx, [ebp - 0x180]
push dword [ebp - 0x258]
cmova eax, dword [ebp - 0x268]
push eax
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x254]
cmp ecx, 7
jbe 0x40c5af
mov edx, dword [ebp - 0x268]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c5a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
xor eax, eax
mov dword [ebp - 0x258], 0
test esi, esi
mov word [ebp - 0x268], ax
mov edx, str.status1
mov dword [ebp - 0x254], 7
mov eax, str.status2
cmovne edx, eax
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c5e0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x180]
call fcn.00407270
push dword [ebp - 0x1d4]
lea eax, [ebp - 0x120]
push str.errorcode_u
push 0x7f
push eax
call fcn.00401190
lea ecx, [ebp - 0x120]
add esp, 0x10
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c621
sub ecx, edx
lea eax, [ebp - 0x120]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x180]
call fcn.00407270
mov ecx, dword [ebp - 0x188]
mov eax, edi
sub eax, ecx
cmp eax, 0xf
jb 0x40d19d
cmp dword [ebp - 0x184], 7
lea eax, [ebp - 0x198]
push ecx
cmova eax, dword [ebp - 0x198]
push eax
push 0xf
push str.flag3svrver
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x280]
call fcn.004089f0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x280]
cmp dword [ebp - 0x26c], 7
lea ecx, [ebp - 0x180]
push dword [ebp - 0x270]
cmova eax, dword [ebp - 0x280]
push eax
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x26c]
cmp ecx, 7
jbe 0x40c6f0
mov edx, dword [ebp - 0x280]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c6e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
push 0xa
xor eax, eax
mov dword [ebp - 0x270], 0
push str.filename
lea ecx, [ebp - 0x180]
mov dword [ebp - 0x26c], 7
mov word [ebp - 0x280], ax
call fcn.00407270
mov edx, dword [ebp - 0x1d0]
lea ecx, [ebp - 0x2b0]
push 1
call fcn.00410580
mov esi, eax
add esp, 4
lea eax, [ebp - 0x168]
cmp eax, esi
je 0x40c7ab
mov ecx, dword [ebp - 0x154]
cmp ecx, 7
jbe 0x40c781
mov edx, dword [ebp - 0x168]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c777
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d193
push ecx
push edx
call fcn.0041eebc
add esp, 8
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x168], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x158], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov ecx, dword [ebp - 0x29c]
cmp ecx, 7
jbe 0x40c7eb
mov edx, dword [ebp - 0x2b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c7e1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d193
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov edx, dword [ebp - 0x1d0]
lea ecx, [ebp - 0x2c8]
xor eax, eax
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 7
mov word [ebp - 0x2b0], ax
call fcn.004103d0
push 4
push str..._
mov ecx, eax
mov byte [ebp - 4], 0xc
call fcn.00407270
xor ecx, ecx
movups xmm0, xmmword [eax]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov ecx, dword [ebp - 0x13c]
movq qword [ebp - 0x1d8], xmm1
movq qword [ebp - 0x300], xmm1
movups xmmword [ebp - 0x200], xmm0
movups xmmword [ebp - 0x310], xmm0
cmp ecx, 7
jbe 0x40c8b3
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c89a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d198
push ecx
push edx
call fcn.0041eebc
movups xmm0, xmmword [ebp - 0x200]
add esp, 8
movq xmm1, qword [ebp - 0x1d8]
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x2b4]
movq qword [ebp - 0x140], xmm1
movups xmmword [ebp - 0x150], xmm0
cmp ecx, 7
jbe 0x40c906
mov edx, dword [ebp - 0x2c8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c8fc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d198
push ecx
push edx
call fcn.0041eebc
add esp, 8
xor eax, eax
mov dword [ebp - 0x2b8], 0
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x2b4], 7
mov word [ebp - 0x2c8], ax
call fcn.0040f640
mov ecx, dword [ebp - 0x140]
mov eax, edi
sub eax, ecx
cmp eax, 0xf
jb 0x40d19d
cmp dword [ebp - 0x13c], 7
lea eax, [ebp - 0x150]
push 0xf
cmova eax, dword [ebp - 0x150]
push str.xbaiservice.exe
push ecx
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x298]
call fcn.004089f0
cmp dword [ebp - 0x284], 7
lea eax, [ebp - 0x298]
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmova eax, dword [ebp - 0x298]
push eax
call esi
mov ecx, dword [ebp - 0x284]
mov dword [ebp - 0x1d4], eax
cmp ecx, 7
jbe 0x40c9d6
mov edx, dword [ebp - 0x298]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c9c6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1a2
push ecx
push edx
call fcn.0041eebc
mov eax, dword [ebp - 0x1d4]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 7
mov word [ebp - 0x298], cx
cmp eax, 1
jne 0x40ca04
push 4
push str.ver_
jmp 0x40cac3
mov ecx, dword [ebp - 0x140]
sub edi, ecx
cmp edi, 0xd
jb 0x40d1a7
cmp dword [ebp - 0x13c], 7
lea eax, [ebp - 0x150]
push 0xd
cmova eax, dword [ebp - 0x150]
push 0x44938c
push ecx
push eax
push ecx
push dword [ebp - 0x18]
lea ecx, [ebp - 0x1f0]
call fcn.004089f0
cmp dword [ebp - 0x1dc], 7
lea eax, [ebp - 0x1f0]
cmova eax, dword [ebp - 0x1f0]
push eax
call esi
mov ecx, dword [ebp - 0x1dc]
mov esi, eax
cmp ecx, 7
jbe 0x40ca9a
mov edx, dword [ebp - 0x1f0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ca90
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1ac
push ecx
push edx
call fcn.0041eebc
add esp, 8
xor eax, eax
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 7
mov word [ebp - 0x1f0], ax
cmp esi, 1
jne 0x40cacf
push 5
push str.root_
push ecx
lea ecx, [ebp - 0x168]
call fcn.0040ebd0
cmp dword [ebp - 0x154], 7
lea eax, [ebp - 0x168]
push dword [ebp - 0x158]
cmova eax, dword [ebp - 0x168]
lea ecx, [ebp - 0x180]
push eax
call fcn.00407270
push ecx
mov ecx, dword [ebp - 0x1d0]
lea edx, [ebp - 0x120]
call fcn.00417370
add esp, 4
lea ecx, [ebp - 0x180]
push 5
push str.md5
call fcn.00407270
push ecx
lea edx, [ebp - 0x120]
lea ecx, [ebp - 0x2e0]
call fcn.00417e20
add esp, 4
mov byte [ebp - 4], 0xd
mov ecx, eax
cmp dword [eax + 0x14], 7
jbe 0x40cb3f
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x180]
call fcn.00407270
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x2cc]
cmp ecx, 7
jbe 0x40cb92
mov edx, dword [ebp - 0x2e0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cb88
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1b1
push ecx
push edx
call fcn.0041eebc
add esp, 8
xor eax, eax
mov dword [ebp - 0x2d0], 0
cmp dword [ebp - 0x16c], 7
lea edx, [ebp - 0x180]
push ecx
cmova edx, dword [ebp - 0x180]
lea ecx, [ebp - 0x2f8]
mov dword [ebp - 0x2cc], 7
mov word [ebp - 0x2e0], ax
call fcn.00417cd0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x138]
cmp eax, esi
je 0x40cc5b
mov ecx, dword [ebp - 0x124]
cmp ecx, 0xf
jbe 0x40cc18
mov edx, dword [ebp - 0x138]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cc0e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1b6
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0xf
mov byte [ebp - 0x138], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0x138], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x128], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
mov ecx, dword [ebp - 0x2e4]
cmp ecx, 0xf
jbe 0x40cc95
mov edx, dword [ebp - 0x2f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cc8b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1b6
push ecx
push edx
call fcn.0041eebc
add esp, 8
cmp dword [ebp - 0x124], 0xf
lea ecx, [ebp - 0x138]
mov edx, dword [ebp - 0x128]
lea eax, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x138]
sub esp, 0xc
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
push eax
call fcn.0041a370
mov esi, eax
add esp, 0x10
test esi, esi
je 0x40cd06
push 4
push str.fid
lea ecx, [ebp - 0x138]
call fcn.00406f80
push esi
lea ecx, [ebp - 0x138]
call fcn.004070b0
push esi
call fcn.0041ee87
add esp, 4
push 0x3c
push str.https:__cclientreport.minibai.com_thirdfilesexecutelog.json_
push 0
lea ecx, [ebp - 0x138]
call fcn.00406eb0
mov edx, dword [ebp - 0x124]
mov eax, edx
mov ecx, dword [ebp - 0x128]
sub eax, ecx
push 0x12
push str.aidsnquversion
cmp eax, 0x12
jb 0x40cd60
cmp edx, 0xf
lea esi, [ebp - 0x138]
lea eax, [ecx + 0x12]
cmova esi, dword [ebp - 0x138]
add esi, ecx
mov dword [ebp - 0x128], eax
push esi
call fcn.00420f10
add esp, 0xc
mov byte [esi + 0x12], 0
jmp 0x40cd7a
mov byte [ebp - 0x1d4], 0
lea ecx, [ebp - 0x138]
push dword [ebp - 0x1d4]
push 0x12
call fcn.00407800
push 2
xorps xmm0, xmm0
mov dword [ebp - 0x1f8], 0
push 0x44941c
lea ecx, [ebp - 0x208]
mov dword [ebp - 0x1f4], 0
movups xmmword [ebp - 0x208], xmm0
call fcn.00407960
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x138]
cmp dword [ebp - 0x124], 0xf
lea edx, [ebp - 0x208]
cmova ecx, dword [ebp - 0x138]
sub esp, 0x10
call fcn.00406860
mov byte [ebp - 4], 6
add esp, 0x10
mov ecx, dword [ebp - 0x1f4]
mov edi, eax
mov dword [ebp - 0x1c], edi
cmp ecx, 0xf
jbe 0x40ce16
mov edx, dword [ebp - 0x208]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ce0c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
cmp edi, 0x2efd
jne 0x40cf78
push 0x1c
call fcn.0041ee8c
mov esi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x18], esi
add esp, 4
movups xmmword [ebp - 0x1f0], xmm0
mov dword [ebp - 0x1e0], 0
movups xmmword [esi], xmm0
push 3
movq qword [esi + 0x10], xmm0
mov dword [esi + 0x18], 0
mov dword [esi + 4], 0x448ff0
mov dword [esi + 0x14], vtable.refer.0
mov dword [esi + 0x18], 1
mov eax, dword [esi + 4]
mov dword [esi], vtable.http_simulator.1.0
push 0x449420
mov dword [ebp - 0x1dc], 0
mov eax, dword [eax + 4]
mov dword [eax + esi + 4], vtable.http_simulator.0
mov eax, dword [esi + 4]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x10]
mov dword [esi + ecx], eax
lea ecx, [ebp - 0x1f0]
mov dword [esi + 8], 0
mov byte [esi + 0xc], 0
call fcn.00407960
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x138]
mov eax, dword [esi]
cmp dword [ebp - 0x124], 0xf
push 0
cmova ecx, dword [ebp - 0x138]
mov eax, dword [eax + 0x14]
push 0
push str.file
push str.file
cmp eax, fcn.00402f80
jne 0x40cf0d
lea eax, [ebp - 0x1f0]
push eax
push ecx
push esi
call fcn.00402f80
jmp 0x40cf18
lea edx, [ebp - 0x1f0]
push edx
push ecx
push esi
call eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1dc]
cmp ecx, 0xf
jbe 0x40cf56
mov edx, dword [ebp - 0x1f0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cf4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1bb
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov eax, dword [esi]
mov eax, dword [eax + 4]
cmp eax, method.block_tcp_client.virtual_4
jne 0x40cf75
mov eax, dword [esi + 4]
mov eax, dword [eax + 4]
add eax, 4
add eax, esi
push eax
call fcn.004013d0
jmp 0x40cf78
push esi
call eax
mov ecx, dword [ebp - 0x124]
test edi, edi
sete byte [ebp - 0x1c9]
cmp ecx, 0xf
jbe 0x40cfbb
mov edx, dword [ebp - 0x138]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cfb1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x184]
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x124], 0xf
mov byte [ebp - 0x138], 0
cmp ecx, 7
jbe 0x40d016
mov edx, dword [ebp - 0x198]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d00c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x19c]
cmp ecx, 7
jbe 0x40d056
mov edx, dword [ebp - 0x1b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d04c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x154]
cmp ecx, 7
jbe 0x40d096
mov edx, dword [ebp - 0x168]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d08c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x13c]
cmp ecx, 7
jbe 0x40d0d6
mov edx, dword [ebp - 0x150]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d0cc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x1b4]
xor eax, eax
mov dword [ebp - 0x140], 0
mov dword [ebp - 0x13c], 7
mov word [ebp - 0x150], ax
cmp ecx, 7
jbe 0x40d133
mov edx, dword [ebp - 0x1c8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d129
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov ecx, dword [ebp - 0x16c]
cmp ecx, 7
jbe 0x40d16f
mov edx, dword [ebp - 0x180]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d165
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d1c0
push ecx
push edx
call fcn.0041eebc
add esp, 8
mov al, byte [ebp - 0x1c9]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0041ee79
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004273ec
call fcn.004273ec
call fcn.00401360
call fcn.004273ec
call fcn.00401360
call fcn.004273ec
call fcn.004273ec
call fcn.004273ec
call fcn.004273ec
call fcn.004273ec
int3