Function at 0x404000
Capabilities:
Resolve function by parsing pe exports
Send data
Send data on socket

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x40bd1c
push eax
mov eax, 0x2a18
mov dword fs:[0], esp
call fcn.0040ba00
push ebx
push ebp
push esi
mov esi, dword [esp + 0x2a34]
push edi
lea eax, [esp + 0x120]
mov ebx, ecx
push esi
push eax
mov dword [esp + 0x40], ebx
call fcn.00403020
mov eax, dword [esp + 0x12c]
add esp, 8
and eax, 0xffff
cmp eax, 0x27a
jg 0x4042ac
je 0x404287
add eax, 0xfffffff6
cmp eax, 0xbf
ja case.0x404074.14
xor ecx, ecx
mov cl, byte [eax + 0x409e68]
jmp dword [ecx*4 + 0x409e54]
mov edx, dword [esp + 0x126]
mov eax, dword [esp + 0x128]
and edx, 0xffff
and eax, 0xffff
mov dword [ebx + 4], edx
mov dword [ebx + 8], eax
jmp 0x409e37
add esi, 0x10
mov dword [esp + 0x34], 0
push 0x2f
push esi
call dword [sym.imp.MSVCRT.dll_strchr]
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x40415f
mov ecx, 0xd
xor eax, eax
lea edi, [esp + 0x88]
mov byte [ebp], 0
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x88]
push 0x34
push ecx
push esi
call fcn.00402ef0
mov edx, dword [esp + 0x94]
add esp, 0xc
and edx, 0xff
xor eax, eax
lea ecx, [ebx + 0x8e0]
mov byte [esp + edx + 0x89], 0
cmp dword [ecx], 0
je 0x404114
inc eax
add ecx, 4
cmp eax, 0x28
jl 0x404104
jmp 0x404153
mov ecx, dword [esp + 0xb4]
lea edi, [esp + 0x89]
mov dword [ebx + eax*4 + 0x8e0], ecx
lea eax, [eax + eax*2]
or ecx, 0xffffffff
lea edx, [eax + eax*4]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + edx*2 + 0x980]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x34]
lea esi, [ebp + 1]
inc eax
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x12a]
mov eax, dword [esp + 0x34]
and ecx, 0xffff
cmp eax, ecx
jge 0x409e37
test ebp, ebp
jne 0x4040aa
jmp 0x409e37
lea edx, [esp + 0x88]
add esi, 0x10
push 0x34
push edx
push esi
call fcn.00402ef0
mov ecx, 0xd
xor eax, eax
lea edi, [esp + 0x94]
push 0x34
rep stosd dword es:[edi], eax
lea eax, [esp + 0x98]
push eax
push esi
call fcn.00402ef0
mov ecx, dword [esp + 0xa0]
add esp, 0x18
and ecx, 0xff
xor eax, eax
mov byte [esp + ecx + 0x89], 0
lea ecx, [ebx + 0x8e0]
cmp dword [ecx], 0
je 0x4041eb
inc eax
add ecx, 4
cmp eax, 0x28
jl 0x4041d8
jmp 0x409e37
mov edx, dword [esp + 0xb4]
lea edi, [esp + 0x89]
mov dword [ebx + eax*4 + 0x8e0], edx
lea eax, [eax + eax*2]
or ecx, 0xffffffff
lea eax, [eax + eax*4]
lea edx, [ebx + eax*2 + 0x980]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x409e37
mov eax, dword [ebx + 0x8cc]
test eax, eax
jne 0x409e37
lea ecx, [esp + 0x3e8]
push 0x2000
add esi, 0x10
push ecx
push esi
call fcn.00402ef0
lea edx, [esp + 0x3f4]
mov byte [esp + eax + 0x3f4], 0
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 0x10
cmp eax, 2
jne 0x409e37
mov eax, dword [esp + 0x120]
mov dword [ebx + 0x8cc], eax
jmp 0x409e37
mov ecx, dword [esp + 0x126]
mov edx, dword [esp + 0x128]
and ecx, 0xffff
and edx, 0xffff
mov dword [ebx + 4], ecx
mov dword [ebx + 8], edx
jmp 0x409e37
sub eax, 0x27b
je 0x409e37
sub eax, 8
je 0x404b18
sub eax, 0x22d
je 0x4049cc
lea eax, [esp + 0x3e8]
push 0x2000
add esi, 0x10
push eax
push esi
call fcn.00402ef0
mov esi, dword [sym.imp.MSVCRT.dll_strstr]
lea ecx, [esp + 0x3f4]
push 0x40f24c
push ecx
mov byte [esp + eax + 0x3fc], 0
call esi
add esp, 0x14
mov edi, 1
test eax, eax
je 0x404326
lea edx, [esp + 0x3e8]
push 0x40f244
push edx
call esi
add esp, 8
test eax, eax
je 0x404326
mov dword [ebx + 0xe58], edi
lea eax, [esp + 0x3e8]
push 0x40f23c
push eax
call esi
add esp, 8
test eax, eax
je 0x404356
lea ecx, [esp + 0x3e8]
push 0x40f234
push ecx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea edx, [esp + 0x3e8]
push 0x40f22c
push edx
call esi
add esp, 8
test eax, eax
je 0x404386
lea eax, [esp + 0x3e8]
push 0x40f228
push eax
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea ecx, [esp + 0x3e8]
push 0x40f23c
push ecx
call esi
add esp, 8
test eax, eax
je 0x4043b6
lea edx, [esp + 0x3e8]
push 0x40f220
push edx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea eax, [esp + 0x3e8]
push 0x40f23c
push eax
call esi
add esp, 8
test eax, eax
je 0x4043e6
lea ecx, [esp + 0x3e8]
push 0x40f218
push ecx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea edx, [esp + 0x3e8]
push 0x40f214
push edx
call esi
add esp, 8
test eax, eax
je 0x404416
lea eax, [esp + 0x3e8]
push 0x40f228
push eax
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea ecx, [esp + 0x3e8]
push 0x40f214
push ecx
call esi
add esp, 8
test eax, eax
je 0x404442
lea edx, [esp + 0x3e8]
push 0x40f20c
push edx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea eax, [esp + 0x3e8]
push 0x40f214
push eax
call esi
add esp, 8
test eax, eax
je 0x40446e
lea ecx, [esp + 0x3e8]
push 0x40f204
push ecx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea edx, [esp + 0x3e8]
push 0x40f1f8
push edx
call esi
add esp, 8
test eax, eax
jne 0x40449a
lea eax, [esp + 0x3e8]
push 0x40f1ec
push eax
call esi
add esp, 8
test eax, eax
je 0x40449d
mov dword [ebx + 0x10], edi
lea ecx, [esp + 0x3e8]
push 0x40e948
push ecx
call esi
add esp, 8
test eax, eax
je 0x4044e6
lea edx, [esp + 0x3e8]
push 0x40f214
push edx
call esi
add esp, 8
test eax, eax
je 0x4044e6
lea eax, [esp + 0x3e8]
push 0x40f20c
push eax
call esi
add esp, 8
test eax, eax
je 0x4044e6
mov dword [ebx + 0x10], 0
lea ecx, [esp + 0x3e8]
push 0x40f1e4
push ecx
call esi
add esp, 8
test eax, eax
je 0x4045a0
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1e4
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1e4
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x34
cmp eax, 9
jl 0x404562
mov dword [ebx + 0xc], 1
jmp 0x404566
inc eax
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x8dc]
push 0
not ecx
dec ecx
push ecx
push esi
push eax
jmp 0x4049b7
lea ecx, [esp + 0x3e8]
push 0x40f1dc
push ecx
call esi
add esp, 8
test eax, eax
je 0x404604
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1dc
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1dc
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f1d4
push ecx
call esi
add esp, 8
test eax, eax
je 0x404668
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1d4
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1d4
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f1c8
push ecx
call esi
add esp, 8
test eax, eax
je 0x4046cc
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1c8
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1c8
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f1bc
push ecx
call esi
add esp, 8
test eax, eax
je 0x404730
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1bc
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1bc
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f1b0
push ecx
call esi
add esp, 8
test eax, eax
je 0x404794
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1b0
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1b0
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f1a4
push ecx
call esi
add esp, 8
test eax, eax
je 0x4047f8
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
mov edi, 0x40f1a4
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
push 0x40f1a4
jmp 0x404549
lea ecx, [esp + 0x3e8]
push 0x40f19c
push ecx
call esi
add esp, 8
test eax, eax
je 0x409e37
lea edx, [esp + 0x3e8]
push 0x40f194
push edx
call esi
add esp, 8
test eax, eax
je 0x409e37
mov ecx, 0x19
xor eax, eax
lea edi, [esp + 0x23e8]
push 0x40f19c
rep stosd dword es:[edi], eax
lea eax, [esp + 0x3ec]
push eax
call esi
add esp, 8
test eax, eax
je 0x409e37
lea ecx, [esp + 0x3e8]
push 0x40f19c
push ecx
call esi
mov ebx, dword [sym.imp.MSVCRT.dll_strchr]
mov ebp, eax
push pe_nt_image_headers32
push ebp
call ebx
push 0x40f190
push ebp
mov edi, eax
call esi
mov edx, eax
add esp, 0x18
test edx, edx
jne 0x4048d2
push 0x40f18c
push ebp
call esi
mov edx, eax
add esp, 8
test edx, edx
jne 0x4048d2
push 0x5d
push ebp
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x4048d2
push 0x3e
push ebp
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x4048d2
push 0x3c
push ebp
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x4048d2
push 0x20
push ebp
call ebx
mov edx, eax
add esp, 8
test edx, edx
je 0x409e37
or ecx, 0xffffffff
xor eax, eax
mov byte [edx], 0
lea ebx, [esp + 0x23e8]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x7d0
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [edx], 0x2f
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov ebx, dword [esp + 0x38]
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
lea edi, [esp + 0x240c]
or ecx, 0xffffffff
xor eax, eax
add ebx, 0x434
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
lea ecx, [esp + 0x2414]
push ebx
push ecx
call fcn.00402e20
mov edx, dword [esp + 0x6c]
add esp, 0x34
mov eax, dword [edx + 0xc]
cmp eax, 9
jl 0x404978
mov eax, edx
mov dword [eax + 0xc], 1
jmp 0x404980
mov ecx, dword [esp + 0x38]
inc eax
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x38]
push ebx
push ebp
mov edx, dword [eax + 0xc]
lea esi, [eax + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x38]
push 0
not ecx
dec ecx
push ecx
mov ecx, dword [eax + 0x8dc]
push esi
push ecx
call sub.WSOCK32.dll_send
push 0x12c
call dword [sym.imp.KERNEL32.DLL_Sleep]
jmp 0x409e37
lea edx, [esp + 0x3e8]
add esi, 0x10
push 0x2000
push edx
push esi
call fcn.00402ef0
movsx eax, byte [esp + 0x3f6]
movsx ecx, byte [esp + 0x3f5]
movsx edx, byte [esp + 0x3f4]
add esp, 0xc
mov byte [ebx + 0xe74], 1
push eax
push ecx
push edx
lea eax, [ebx + 0xe75]
push str._d_d_d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [esp + 0x3fc]
push 0x2000
add esi, 0x16
push ecx
push esi
call fcn.00402ef0
mov edx, dword [esp + 0x140]
push 0
push 0
push 0
push edx
lea eax, [esp + 0x84]
push 0x3f3
push eax
call fcn.00403040
lea esi, [ebx + 0x414]
push 0x20
lea ecx, [esp + 0x90]
push esi
push ecx
call fcn.00402fe0
lea edi, [esp + 0x42c]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x44
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea ebp, [ebx + 0x434]
push 0x400
push ecx
lea edx, [esp + 0x3f0]
push ebp
push edx
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x10
cmp eax, 9
jl 0x404aa7
mov dword [ebx + 0xc], 1
jmp 0x404aab
inc eax
mov dword [ebx + 0xc], eax
mov ecx, dword [ebx + 0xc]
push ebp
push esi
lea eax, [ebx + 0x14]
push ecx
push str._d_s_s_
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esp + 0x13a]
add esp, 0x14
cmp ax, 5
jae 0x404ae9
test ax, ax
jbe 0x404ae9
and eax, 0xffff
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
lea edx, [eax + eax*4]
shl edx, 3
push edx
jmp 0x404aee
push 0xbb8
call dword [sym.imp.KERNEL32.DLL_Sleep]
lea edx, [ebx + 0x14]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x8dc]
push 0
not ecx
dec ecx
push ecx
push edx
push eax
call sub.WSOCK32.dll_send
jmp 0x409e37
push esi
lea ecx, [esp + 0x1c]
call fcn.0040b796
xor esi, esi
push 0x40e77c
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2a34], esi
call sub.MFC42.DLL_CString::Find
test eax, eax
jl 0x404b69
push 1
push 0x40e77c
lea ecx, [esp + 0x20]
call sub.MFC42.DLL_CString::Find
push eax
lea ecx, [esp + 0x20]
call sub.MFC42.DLL_CString::Delete
push 0x40e77c
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Find
test eax, eax
jge 0x404b3d
push esi
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::GetBuffer
lea ecx, [esp + 0x3e8]
push 0x2000
add eax, 0x10
push ecx
push eax
call fcn.00402ef0
mov edx, dword [esp + 0x12c]
mov ebp, dword [sym.imp.MSVCRT.dll_strstr]
mov byte [esp + eax + 0x3f4], 0
lea eax, [esp + 0x3f4]
push 0x40f23c
push eax
mov dword [esp + 0x64], edx
mov dword [esp + 0x28], esi
call ebp
add esp, 0x14
test eax, eax
je 0x404bd6
lea ecx, [esp + 0x3e8]
push 0x40f234
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea edx, [esp + 0x3e8]
push 0x40f22c
push edx
call ebp
add esp, 8
test eax, eax
je 0x404c06
lea eax, [esp + 0x3e8]
push 0x40f228
push eax
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea ecx, [esp + 0x3e8]
push 0x40f23c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x404c36
lea edx, [esp + 0x3e8]
push 0x40f220
push edx
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea eax, [esp + 0x3e8]
push 0x40f23c
push eax
call ebp
add esp, 8
test eax, eax
je 0x404c66
lea ecx, [esp + 0x3e8]
push 0x40f218
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea edx, [esp + 0x3e8]
push 0x40f214
push edx
call ebp
add esp, 8
test eax, eax
je 0x404c92
lea eax, [esp + 0x3e8]
push 0x40f228
push eax
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea ecx, [esp + 0x3e8]
push 0x40f214
push ecx
call ebp
add esp, 8
test eax, eax
je 0x404cbe
lea edx, [esp + 0x3e8]
push 0x40f20c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x404cea
lea eax, [esp + 0x3e8]
push 0x40f214
push eax
call ebp
add esp, 8
test eax, eax
je 0x404cf1
lea ecx, [esp + 0x3e8]
push 0x40f204
push ecx
call ebp
add esp, 8
test eax, eax
je 0x404cf1
mov dword [ebx + 0x10], 1
lea edx, [esp + 0x3e8]
push 0x40e948
push edx
call ebp
add esp, 8
test eax, eax
je 0x404d36
lea eax, [esp + 0x3e8]
push 0x40f214
push eax
call ebp
add esp, 8
test eax, eax
je 0x404d36
lea ecx, [esp + 0x3e8]
push 0x40f20c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x404d36
mov dword [ebx + 0x10], esi
lea edx, [esp + 0x3e8]
push 0x40f178
push edx
call ebp
add esp, 8
test eax, eax
je 0x404e11
mov edi, str._cube
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x88]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0
mov eax, ecx
mov esi, edi
mov edi, edx
push 0
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0
and ecx, 3
lea edx, [esp + 0x60]
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x5c]
push ecx
push 0x3f3
push edx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea eax, [esp + 0x70]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebx + 0x434]
push ecx
lea ecx, [esp + 0xb4]
push edx
push ecx
call fcn.00402e20
add esp, 0x34
mov eax, dword [ebx + 0xc]
cmp eax, 9
jl 0x404de5
mov dword [ebx + 0xc], 1
jmp 0x404de9
inc eax
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x7d0
jmp 0x409bd0
lea ecx, [esp + 0x3e8]
push 0x40f164
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409bf7
lea edx, [esp + 0x3e8]
push 0x40f154
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409bf7
mov ecx, 0xc
lea edi, [esp + 0x88]
rep stosd dword es:[edi], eax
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
push pe_nt_image_headers32
stosw word es:[edi], ax
lea eax, [esp + 0x3ec]
push eax
call esi
mov edi, eax
add esp, 8
test edi, edi
je 0x409e23
cmp byte [edi - 1], 0x2f
je 0x404e93
inc edi
push pe_nt_image_headers32
push edi
call esi
mov edi, eax
add esp, 8
test edi, edi
je 0x409e23
cmp byte [edi - 1], 0x2f
jne 0x404e7a
push 0x3e
push edi
call esi
mov edx, eax
add esp, 8
test edx, edx
je 0x409e23
or ecx, 0xffffffff
xor eax, eax
mov byte [edx], 0
lea esi, [esp + 0x88]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x30], esi
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x30]
push 0x40f14c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [edx], 0x3e
lea edx, [esp + 0x3ec]
lea ecx, [esp + 0x3ec]
push edx
mov dword [esp + 0x3c], ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push 0x40f144
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push 0x40f13c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push 0x40f134
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push 0x40f12c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push 0x40f124
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push 0x40f118
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push 0x40f10c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push str.__huicheng_
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push 0x40f0f8
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push str.__biqi_
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push str.__ok_
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push str.__hysm_
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push str.__zc_
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push str.__true_
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push str.__jihuodenglu_
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push str.__mxl_
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push str.__DelayLabel_
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push str.__jiechu_
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea eax, [esp + 0x3e8]
push str.__zcyx_
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea ecx, [esp + 0x3e8]
push 0x40f084
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4097fa
lea edx, [esp + 0x3e8]
push 0x40f078
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40f06c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40f060
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40f054
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40f048
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40f03c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40f034
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40f028
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40f01c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40f00c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40f004
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40eff8
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40efec
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40efe0
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40efd4
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40efcc
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40efc0
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40efb4
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40efa4
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40ef98
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40ef8c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea edx, [esp + 0x3e8]
push 0x40ef7c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea eax, [esp + 0x3e8]
push 0x40ef74
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409334
lea ecx, [esp + 0x3e8]
push 0x40ef70
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4053b4
lea edx, [esp + 0x3e8]
push 0x40ef6c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4053b4
lea eax, [esp + 0x3e8]
push 0x40ef68
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4053b4
lea ecx, [esp + 0x3e8]
push 0x40ef64
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4058af
lea edx, [esp + 0x3e8]
push 0x40ef60
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4053e4
lea eax, [esp + 0x3e8]
push 0x40ef58
push eax
call ebp
add esp, 8
test eax, eax
je 0x4058af
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x131]
mov byte [esp + 0x130], 0
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x3e8]
push 0x40ef60
push ecx
stosb byte es:[edi], al
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x405441
lea edx, [esp + 0x3e8]
push 0x40ef50
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x405441
lea eax, [esp + 0x3e8]
push 0x40ef48
push eax
call ebp
add esp, 8
mov esi, eax
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x3e8]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
sub ecx, edx
cmp ecx, 0x1a
jle 0x40546a
mov ecx, 0x1a
mov edi, dword [sym.imp.MSVCRT.dll_strncpy]
mov eax, esi
push ecx
sub eax, ecx
lea ecx, [esp + 0x134]
push eax
push ecx
call edi
lea edx, [esp + 0x13c]
push 0x40ef70
push edx
call ebp
add esp, 0x14
test eax, eax
jne 0x405556
lea eax, [esp + 0x130]
push 0x40ef6c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x405556
lea ecx, [esp + 0x130]
push 0x40ef68
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x405556
lea edx, [esp + 0x130]
push 0x40ef64
push edx
call ebp
add esp, 8
test eax, eax
jne 0x405556
add esi, 2
push 0x40ef60
push esi
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x40552c
lea eax, [esp + 0x3e8]
push 0x40ef50
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x40552c
lea ecx, [esp + 0x3e8]
push 0x40ef48
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
je 0x409e23
lea edx, [esi - 0x1a]
push 0x1a
lea eax, [esp + 0x134]
push edx
push eax
call edi
lea ecx, [esp + 0x13c]
push 0x40ef70
push ecx
call ebp
add esp, 0x14
test eax, eax
je 0x40549a
lea edx, [esp + 0x130]
push 0x29
push edx
call dword [sym.imp.MSVCRT.dll_strchr]
add esp, 8
test eax, eax
je 0x4055a6
lea eax, [esp + 0x130]
push 0x29
push eax
call dword [sym.imp.MSVCRT.dll_strchr]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x130]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x130]
mov cl, byte [edi]
cmp cl, 0xa3
jne 0x4055e5
mov al, byte [edi + 1]
cmp al, 0xb0
jl 0x4055e5
cmp al, 0xb9
jg 0x4055e5
mov al, byte [edi + 3]
cmp al, 0xab
je 0x405621
cmp al, 0xad
je 0x405621
cmp al, 0xc1
je 0x405621
cmp al, 0xc2
je 0x405621
mov al, byte [edi + 4]
cmp al, 0xab
je 0x405621
cmp al, 0xad
je 0x405621
cmp al, 0xc1
je 0x405621
cmp al, 0xc2
je 0x405621
cmp cl, 0x30
jl 0x405615
cmp cl, 0x39
jg 0x405615
mov al, byte [edi + 2]
cmp al, 0xab
je 0x405621
cmp al, 0xad
je 0x405621
cmp al, 0xc1
je 0x405621
cmp al, 0xc2
je 0x405621
mov al, byte [edi + 3]
cmp al, 0xab
je 0x405621
cmp al, 0xad
je 0x405621
cmp al, 0xc1
je 0x405621
cmp al, 0xc2
je 0x405621
mov ecx, edi
inc edi
test ecx, ecx
jne 0x4055ad
jmp 0x409e23
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x130]
mov eax, ecx
mov esi, edi
mov edi, edx
xor edx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
mov dword [esp + 0x60], eax
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x130]
lea edi, [esp + 0x130]
mov dword [esp + 0x34], ecx
or ecx, 0xffffffff
xor esi, esi
mov dword [esp + 0x64], eax
repne scasb al, byte es:[edi]
not ecx
test ecx, ecx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov byte [esp + 0x24], 0
mov byte [esp + 0x25], 0
mov byte [esp + 0x26], 0
mov byte [esp + 0x27], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x29], 0
mov byte [esp + 0x2a], 0
mov byte [esp + 0x2b], 0
mov byte [esp + 0x2c], 0
mov byte [esp + 0x2d], 0
mov byte [esp + 0x3c], 0
mov byte [esp + 0x3d], 0
mov byte [esp + 0x3e], 0
mov byte [esp + 0x3f], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x41], 0
mov byte [esp + 0x42], 0
mov byte [esp + 0x43], 0
mov byte [esp + 0x44], 0
mov byte [esp + 0x45], 0
mov dword [esp + 0x10], eax
jle 0x4057f2
lea eax, [esp + 0x60]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x10]
mov al, byte [esp + ecx + 0x130]
lea edi, [esp + ecx + 0x130]
cmp al, 0xb0
jl 0x405730
cmp al, 0xb9
jg 0x405730
add al, 0x80
mov byte [esp + edx + 0x3c], al
inc edx
jmp 0x4057b4
cmp al, 0x30
jl 0x40573f
cmp al, 0x39
jg 0x40573f
mov byte [esp + edx + 0x3c], al
inc edx
jmp 0x4057b4
cmp al, 0xab
je 0x405759
cmp al, 0xad
je 0x405759
cmp al, 0xc1
je 0x405759
cmp al, 0xc2
je 0x405759
test al, al
je 0x4057db
jmp 0x4057b4
mov byte [esp + edx + 0x3c], 0
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
mov ecx, dword [esp + 0x18]
add esp, 4
mov dword [ecx], eax
movsx eax, byte [edi]
add eax, 0x55
cmp eax, 0x17
ja case.0x405785.81
xor edx, edx
mov dl, byte [eax + 0x409f3c]
jmp dword [edx*4 + 0x409f28]
mov byte [esp + esi + 0x24], 0x2b
jmp case.0x405785.81
mov byte [esp + esi + 0x24], 0x2d
jmp case.0x405785.81
mov byte [esp + esi + 0x24], 0x2a
jmp case.0x405785.81
mov byte [esp + esi + 0x24], 0x2f
mov eax, dword [esp + 0x14]
inc esi
add eax, 4
xor edx, edx
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x10]
lea edi, [esp + 0x130]
inc eax
or ecx, 0xffffffff
mov dword [esp + 0x10], eax
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x10]
not ecx
cmp eax, ecx
jl 0x40570a
jmp 0x4057f2
lea eax, [esp + 0x3c]
mov byte [esp + edx + 0x3c], 0
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [esp + esi*4 + 0x60], eax
mov al, byte [esp + 0x24]
xor ecx, ecx
test al, al
je 0x405879
mov al, byte [esp + ecx + 0x24]
cmp al, 0x2a
je 0x40583c
cmp al, 0x2f
je 0x40580b
inc ecx
jmp 0x40586d
mov eax, dword [esp + ecx*4 + 0x60]
cdq
idiv dword [esp + ecx*4 + 0x64]
mov dword [esp + ecx*4 + 0x60], eax
lea eax, [ecx + 1]
cmp eax, 9
jge 0x40586b
lea ecx, [esp + eax*4 + 0x60]
mov edx, dword [ecx + 4]
inc eax
mov dword [ecx], edx
mov dl, byte [esp + eax + 0x23]
mov byte [esp + eax + 0x22], dl
add ecx, 4
cmp eax, 9
jl 0x405824
jmp 0x40586b
mov eax, dword [esp + ecx*4 + 0x64]
imul eax, dword [esp + ecx*4 + 0x60]
mov dword [esp + ecx*4 + 0x60], eax
lea eax, [ecx + 1]
cmp eax, 9
jge 0x40586b
lea ecx, [esp + eax*4 + 0x60]
mov edx, dword [ecx + 4]
inc eax
mov dword [ecx], edx
mov dl, byte [esp + eax + 0x23]
mov byte [esp + eax + 0x22], dl
add ecx, 4
cmp eax, 9
jl 0x405855
xor ecx, ecx
mov al, byte [esp + ecx + 0x24]
test al, al
jne 0x4057fc
mov al, byte [esp + 0x24]
mov esi, dword [esp + 0x60]
test al, al
mov dword [esp + 0x14], esi
je 0x4058af
lea edx, [esp + 0x24]
lea ecx, [esp + 0x64]
movsx eax, al
sub eax, 0x2b
je 0x40589e
sub eax, 2
jne 0x4058a0
sub esi, dword [ecx]
jmp 0x4058a0
add esi, dword [ecx]
mov al, byte [edx + 1]
add ecx, 4
inc edx
test al, al
jne 0x40588d
mov dword [esp + 0x14], esi
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
lea eax, [esp + 0x3e8]
push 0x2b
push eax
call esi
add esp, 8
test eax, eax
jne 0x4058f2
lea ecx, [esp + 0x3e8]
push 0x2d
push ecx
call esi
add esp, 8
test eax, eax
jne 0x4058f2
lea edx, [esp + 0x3e8]
push 0x2a
push edx
call esi
add esp, 8
test eax, eax
je 0x405cd2
lea eax, [esp + 0x3e8]
push 0x3d
push eax
call esi
add esp, 8
test eax, eax
je 0x405cd2
xor ecx, ecx
lea edx, [esp + 0x3e8]
mov dword [esp + 0x61], ecx
push 0x3d
mov dword [esp + 0x69], ecx
push edx
mov dword [esp + 0x71], ecx
mov byte [esp + 0x68], 0
mov dword [esp + 0x75], ecx
mov word [esp + 0x79], cx
mov byte [esp + 0x7b], cl
call dword [sym.imp.MSVCRT.dll_strchr]
mov esi, eax
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
add esp, 8
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x3e8]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
sub ecx, edx
dec ecx
cmp ecx, 0x12
jle 0x405968
mov ecx, 0x12
mov eax, esi
push ecx
sub eax, ecx
lea ecx, [esp + 0x64]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll_strncpy]
mov edi, dword [sym.imp.MSVCRT.dll_strchr]
lea edx, [esp + 0x6c]
push 0x2b
push edx
call edi
add esp, 0x14
test eax, eax
jne 0x4059e3
lea eax, [esp + 0x60]
push 0x2d
push eax
call edi
add esp, 8
test eax, eax
jne 0x4059e3
lea ecx, [esp + 0x60]
push 0x2a
push ecx
call edi
add esp, 8
test eax, eax
jne 0x4059e3
inc esi
push 0x3d
push esi
call edi
mov esi, eax
add esp, 8
test esi, esi
je 0x409e23
lea edx, [esi - 0x12]
push 0x12
lea eax, [esp + 0x64]
push edx
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
lea ecx, [esp + 0x6c]
push 0x2b
push ecx
call edi
add esp, 0x14
test eax, eax
je 0x40598f
lea edi, [esp + 0x60]
mov cl, byte [edi]
cmp cl, 0xa3
jne 0x405a17
mov al, byte [edi + 1]
cmp al, 0xb0
jl 0x405a17
cmp al, 0xb9
jg 0x405a17
mov al, byte [edi + 2]
cmp al, 0x2b
je 0x405a4b
cmp al, 0x2d
je 0x405a4b
cmp al, 0x2a
je 0x405a4b
mov al, byte [edi + 3]
cmp al, 0x2b
je 0x405a4b
cmp al, 0x2d
je 0x405a4b
cmp al, 0x2a
je 0x405a4b
cmp cl, 0x30
jl 0x405a3f
cmp cl, 0x39
jg 0x405a3f
mov al, byte [edi + 1]
cmp al, 0x2b
je 0x405a4b
cmp al, 0x2d
je 0x405a4b
cmp al, 0x2a
je 0x405a4b
mov al, byte [edi + 2]
cmp al, 0x2b
je 0x405a4b
cmp al, 0x2d
je 0x405a4b
cmp al, 0x2a
je 0x405a4b
mov edx, edi
inc edi
test edx, edx
jne 0x4059e7
jmp 0x409e23
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x60]
mov eax, ecx
mov esi, edi
mov edi, edx
xor edx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
mov byte [esp + 0x24], 0
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x60]
lea edi, [esp + 0x60]
mov dword [esp + 0x34], ecx
or ecx, 0xffffffff
xor esi, esi
mov byte [esp + 0x25], 0
repne scasb al, byte es:[edi]
not ecx
test ecx, ecx
mov dword [esp + 0xbc], esi
mov dword [esp + 0xc0], esi
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], esi
mov dword [esp + 0xd0], esi
mov dword [esp + 0xd4], esi
mov dword [esp + 0xd8], esi
mov dword [esp + 0xdc], esi
mov dword [esp + 0xe0], esi
mov byte [esp + 0x26], 0
mov byte [esp + 0x27], 0
mov byte [esp + 0x28], 0
mov byte [esp + 0x29], 0
mov byte [esp + 0x2a], 0
mov byte [esp + 0x2b], 0
mov byte [esp + 0x2c], 0
mov byte [esp + 0x2d], 0
mov byte [esp + 0x3c], 0
mov byte [esp + 0x3d], 0
mov byte [esp + 0x3e], 0
mov byte [esp + 0x3f], 0
mov byte [esp + 0x40], 0
mov byte [esp + 0x41], 0
mov byte [esp + 0x42], 0
mov byte [esp + 0x43], 0
mov byte [esp + 0x44], 0
mov byte [esp + 0x45], 0
mov dword [esp + 0x10], esi
jle 0x405bef
lea eax, [esp + 0xbc]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x10]
mov al, byte [esp + ecx + 0x60]
lea edi, [esp + ecx + 0x60]
cmp al, 0x30
jl 0x405b61
cmp al, 0x39
jg 0x405b61
mov byte [esp + edx + 0x3c], al
inc edx
jmp 0x405bb1
cmp al, 0xb0
jl 0x405b72
cmp al, 0xb9
jg 0x405b72
add al, 0x80
mov byte [esp + edx + 0x3c], al
inc edx
jmp 0x405bb1
cmp al, 0x2b
je 0x405b88
cmp al, 0x2d
je 0x405b88
cmp al, 0x2a
je 0x405b88
cmp al, 0x2f
je 0x405b88
test al, al
je 0x405bd5
jmp 0x405bb1
mov byte [esp + edx + 0x3c], 0
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
mov ecx, dword [esp + 0x18]
add esp, 4
inc esi
mov dword [ecx], eax
mov al, byte [edi]
mov byte [esp + esi + 0x23], al
add ecx, 4
mov dword [esp + 0x14], ecx
xor edx, edx
mov eax, dword [esp + 0x10]
lea edi, [esp + 0x60]
inc eax
or ecx, 0xffffffff
mov dword [esp + 0x10], eax
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x10]
not ecx
cmp eax, ecx
jl 0x405b46
jmp 0x405bef
lea ecx, [esp + 0x3c]
mov byte [esp + edx + 0x3c], 0
push ecx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [esp + esi*4 + 0xbc], eax
mov al, byte [esp + 0x24]
xor ecx, ecx
test al, al
je 0x405c96
mov al, byte [esp + ecx + 0x24]
cmp al, 0x2a
je 0x405c49
cmp al, 0x2f
je 0x405c0c
inc ecx
jmp 0x405c86
mov eax, dword [esp + ecx*4 + 0xbc]
cdq
idiv dword [esp + ecx*4 + 0xc0]
mov dword [esp + ecx*4 + 0xbc], eax
lea eax, [ecx + 1]
cmp eax, 9
jge 0x405c84
lea ecx, [esp + eax*4 + 0xbc]
mov edx, dword [ecx + 4]
inc eax
mov dword [ecx], edx
mov dl, byte [esp + eax + 0x23]
mov byte [esp + eax + 0x22], dl
add ecx, 4
cmp eax, 9
jl 0x405c31
jmp 0x405c84
mov eax, dword [esp + ecx*4 + 0xc0]
imul eax, dword [esp + ecx*4 + 0xbc]
mov dword [esp + ecx*4 + 0xbc], eax
lea eax, [ecx + 1]
cmp eax, 9
jge 0x405c84
lea ecx, [esp + eax*4 + 0xbc]
mov edx, dword [ecx + 4]
inc eax
mov dword [ecx], edx
mov dl, byte [esp + eax + 0x23]
mov byte [esp + eax + 0x22], dl
add ecx, 4
cmp eax, 9
jl 0x405c6e
xor ecx, ecx
mov al, byte [esp + ecx + 0x24]
test al, al
jne 0x405bfd
mov al, byte [esp + 0x24]
mov esi, dword [esp + 0xbc]
test al, al
mov dword [esp + 0x14], esi
je 0x405cd2
lea edx, [esp + 0x24]
lea ecx, [esp + 0xc0]
movsx eax, al
sub eax, 0x2b
je 0x405cc1
sub eax, 2
jne 0x405cc3
sub esi, dword [ecx]
jmp 0x405cc3
add esi, dword [ecx]
mov al, byte [edx + 1]
add ecx, 4
inc edx
test al, al
jne 0x405cb0
mov dword [esp + 0x14], esi
lea eax, [esp + 0x3e8]
push 0x40ef3c
push eax
call ebp
add esp, 8
test eax, eax
je 0x405f2e
mov cl, byte [0x40f540]
mov ebp, dword [esp + 0x34]
mov byte [esp + 0xbc], cl
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0xbd]
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
push pe_nt_image_headers32
rep stosd dword es:[edi], eax
push ebp
stosb byte es:[edi], al
call esi
push 0x3e
push ebp
mov edi, eax
call esi
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
add esp, 0x10
mov byte [edx], 0
lea esi, [esp + 0x88]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x30], esi
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x30]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
or ecx, 0xffffffff
mov byte [edx], 0x2f
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test esi, esi
jle 0x405e38
mov cl, byte [eax + ebp]
cmp cl, 0xa3
jne 0x405d7f
cmp byte [eax + ebp + 2], cl
jne 0x405d7f
cmp byte [eax + ebp + 4], cl
je 0x405de0
cmp cl, 0x30
jl 0x405dd9
cmp cl, 0x39
jg 0x405da5
mov dl, byte [eax + ebp + 1]
cmp dl, 0x30
jl 0x405da5
cmp dl, 0x39
jg 0x405da5
mov dl, byte [eax + ebp + 2]
cmp dl, 0x30
jl 0x405da5
cmp dl, 0x39
jle 0x405dfe
cmp cl, 0x30
jl 0x405dd9
cmp cl, 0x39
jg 0x405dd9
cmp byte [eax + ebp + 1], 0x2e
jne 0x405dd9
mov dl, byte [eax + ebp + 2]
cmp dl, 0x30
jl 0x405dd9
cmp dl, 0x39
jg 0x405dd9
cmp byte [eax + ebp + 3], 0x2e
jne 0x405dd9
mov dl, byte [eax + ebp + 4]
cmp dl, 0x30
jl 0x405dd9
cmp dl, 0x39
jle 0x405e1b
inc eax
cmp eax, esi
jl 0x405d6b
jmp 0x405e38
xor esi, esi
cmp byte [eax + ebp], 0xa3
jne 0x405df6
mov cl, byte [eax + ebp + 1]
add cl, 0x80
add eax, 2
mov byte [esp + esi + 0x3c], cl
inc esi
cmp esi, 0x14
jl 0x405de2
jmp 0x405e38
xor edx, edx
add eax, ebp
mov cl, byte [eax]
cmp cl, 0x30
jl 0x405e13
cmp cl, 0x39
jg 0x405e13
mov byte [esp + edx + 0x3c], cl
inc eax
inc edx
cmp edx, 0xa
jl 0x405e02
jmp 0x405e38
xor edx, edx
add eax, ebp
mov cl, byte [eax]
cmp cl, 0x30
jl 0x405e32
cmp cl, 0x39
jg 0x405e32
mov byte [esp + edx + 0x3c], cl
add eax, 2
inc edx
cmp edx, 0x14
jl 0x405e1f
xor ecx, ecx
mov al, byte [esp + ecx + 0x3c]
cmp al, 0x30
jl 0x405e46
cmp al, 0x39
jle 0x405e4b
mov byte [esp + ecx + 0x3c], 0
inc ecx
cmp ecx, 0xa
jl 0x405e3a
lea edx, [esp + 0x3c]
lea eax, [esp + 0x88]
push edx
push eax
lea ecx, [esp + 0xc4]
push str._s_r_s
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edx, dword [esp + 0x60]
push 0
push 0
push 0
push edx
lea eax, [esp + 0x74]
push 0x3f3
push eax
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea ecx, [esp + 0x80]
push ebp
push ecx
call fcn.00402fe0
lea edi, [esp + 0xf0]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
lea edx, [esp + 0xfc]
push edx
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x44
cmp eax, 9
jl 0x405ee0
mov dword [ebx + 0xc], 1
jmp 0x405ee4
inc eax
mov dword [ebx + 0xc], eax
lea eax, [ebx + 0x434]
lea esi, [ebx + 0x14]
push eax
mov eax, dword [ebx + 0xc]
push ebp
push eax
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x7d0
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [ebx + 0x8dc]
push esi
push ecx
call sub.WSOCK32.dll_send
jmp 0x409e23
lea edx, [esp + 0x3e8]
push str.InPutString
push edx
call ebp
add esp, 8
test eax, eax
jne 0x407fde
lea eax, [esp + 0x3e8]
push str.sendmsg
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407fde
lea ecx, [esp + 0x3e8]
push str.InPutInteger
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x40797d
lea edx, [esp + 0x3e8]
push str.inputinteger
push edx
call ebp
add esp, 8
test eax, eax
jne 0x40797d
lea eax, [esp + 0x3e8]
push str.CHECKNO
push eax
call ebp
add esp, 8
test eax, eax
jne 0x40797d
lea ecx, [esp + 0x3e8]
push str.CheckNo
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x40797d
lea edx, [esp + 0x3e8]
push 0x40eeec
push edx
call ebp
add esp, 8
test eax, eax
je 0x405ffa
lea eax, [esp + 0x3e8]
push 0x40eee8
push eax
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea ecx, [esp + 0x3e8]
push 0x40eee4
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40602a
lea edx, [esp + 0x3e8]
push 0x40eee0
push edx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea eax, [esp + 0x3e8]
push 0x40eedc
push eax
call ebp
add esp, 8
test eax, eax
je 0x406070
lea ecx, [esp + 0x3e8]
push 0x40eed8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406070
lea edx, [esp + 0x3e8]
push 0x40eed4
push edx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea eax, [esp + 0x3e8]
push 0x40eed0
push eax
call ebp
add esp, 8
test eax, eax
je 0x4060b6
lea ecx, [esp + 0x3e8]
push 0x40eecc
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4060b6
lea edx, [esp + 0x3e8]
push 0x40eec8
push edx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea eax, [esp + 0x3e8]
push 0x40eec0
push eax
call ebp
add esp, 8
test eax, eax
je 0x4060fc
lea ecx, [esp + 0x3e8]
push 0x40eeb8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4060fc
lea edx, [esp + 0x3e8]
push 0x40eeb0
push edx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea eax, [esp + 0x3e8]
push 0x40eeac
push eax
call ebp
add esp, 8
test eax, eax
je 0x406142
lea ecx, [esp + 0x3e8]
push 0x40eea8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406142
lea edx, [esp + 0x3e8]
push 0x40eea4
push edx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea eax, [esp + 0x3e8]
push 0x40eea0
push eax
call ebp
add esp, 8
test eax, eax
je 0x406172
lea ecx, [esp + 0x3e8]
push 0x40ee9c
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea edx, [esp + 0x3e8]
push 0x40ef70
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4061ca
lea eax, [esp + 0x3e8]
push 0x40ef6c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4061ca
lea ecx, [esp + 0x3e8]
push 0x40ef68
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x4061ca
lea edx, [esp + 0x3e8]
push 0x40ef64
push edx
call ebp
add esp, 8
test eax, eax
je 0x4061fe
lea eax, [esp + 0x3e8]
push 0x40ef60
push eax
call ebp
add esp, 8
test eax, eax
jne 0x406446
lea ecx, [esp + 0x3e8]
push 0x40ee98
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x406446
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
lea edx, [esp + 0x3e8]
push 0x2b
push edx
call esi
add esp, 8
test eax, eax
jne 0x40623d
lea eax, [esp + 0x3e8]
push 0x2d
push eax
call esi
add esp, 8
test eax, eax
jne 0x40623d
lea ecx, [esp + 0x3e8]
push 0x2a
push ecx
call esi
add esp, 8
test eax, eax
je 0x406271
lea edx, [esp + 0x3e8]
push 0x40ef60
push edx
call ebp
add esp, 8
test eax, eax
jne 0x40644c
lea eax, [esp + 0x3e8]
push 0x40ee98
push eax
call ebp
add esp, 8
test eax, eax
jne 0x40644c
lea ecx, [esp + 0x3e8]
push str.__delaye_
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea edx, [esp + 0x3e8]
push 0x40ee80
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea eax, [esp + 0x3e8]
push 0x40ee70
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea ecx, [esp + 0x3e8]
push 0x40ee64
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea edx, [esp + 0x3e8]
push 0x40ee58
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea eax, [esp + 0x3e8]
push 0x40ee44
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea ecx, [esp + 0x3e8]
push 0x40ee34
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea edx, [esp + 0x3e8]
push 0x40ee24
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea eax, [esp + 0x3e8]
push 0x40ee14
push eax
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea ecx, [esp + 0x3e8]
push 0x40ee00
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
lea edx, [esp + 0x3e8]
push 0x40edf8
push edx
call ebp
add esp, 8
test eax, eax
jne 0x409e23
push eax
push eax
push eax
mov eax, dword [esp + 0x5c]
push eax
lea ecx, [esp + 0x64]
push 0x3f3
push ecx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea edx, [esp + 0x70]
push ebp
push edx
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
lea eax, [esp + 0xb4]
push edx
push eax
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x34
cmp eax, 9
jl 0x4063f8
mov dword [ebx + 0xc], 1
jmp 0x4063fc
inc eax
mov dword [ebx + 0xc], eax
mov ecx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push ecx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x1f4
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebx + 0x8dc]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0
push ecx
push esi
push edx
call sub.WSOCK32.dll_send
jmp 0x409e23
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0x88]
xor ebx, ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
lea ecx, [esp + 0x3e8]
mov dword [esp + 0x3c], eax
push 0x40ef70
mov dword [esp + 0x44], eax
push ecx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x18], ebx
mov dword [esp + 0x50], eax
mov byte [esp + 0x28], bl
mov byte [esp + 0x29], bl
mov byte [esp + 0x2a], bl
mov dword [esp + 0x54], eax
call ebp
add esp, 8
test eax, eax
jne 0x4064de
lea edx, [esp + 0x3e8]
push 0x40ef6c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4064de
lea eax, [esp + 0x3e8]
push 0x40ef68
push eax
call ebp
add esp, 8
test eax, eax
jne 0x4064de
lea ecx, [esp + 0x3e8]
push 0x40ef64
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406512
lea edx, [esp + 0x3e8]
push 0x40ef60
push edx
call ebp
add esp, 8
test eax, eax
jne 0x40719d
lea eax, [esp + 0x3e8]
push 0x40ee98
push eax
call ebp
add esp, 8
test eax, eax
jne 0x40719d
lea ecx, [esp + 0x3e8]
push 0x2b
push ecx
call esi
add esp, 8
test eax, eax
jne 0x40654b
lea edx, [esp + 0x3e8]
push 0x2d
push edx
call esi
add esp, 8
test eax, eax
jne 0x40654b
lea eax, [esp + 0x3e8]
push 0x2a
push eax
call esi
add esp, 8
test eax, eax
je 0x40657f
lea ecx, [esp + 0x3e8]
push 0x40ef60
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x40719d
lea edx, [esp + 0x3e8]
push 0x40ee98
push edx
call ebp
add esp, 8
test eax, eax
jne 0x40719d
lea eax, [esp + 0x3e8]
push 0x40edf0
push eax
call ebp
add esp, 8
test eax, eax
je 0x406e99
lea ecx, [esp + 0x14]
mov dword [esp + 0x34], ebx
call sub.MFC42.DLL_CString::CString_1
lea ecx, [esp + 0x3e8]
mov byte [esp + 0x2a30], 3
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::operator
push 0x40edec
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
test eax, eax
lea edx, [esp + 0x1c]
jl 0x406a8b
mov edi, 0x40edec
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
push eax
lea eax, [esp + 0x190]
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xbc]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x18c]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x180]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
lea edx, [esp + 0xd0]
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x180]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x178]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xe4]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x178]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x188]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xf8]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x188]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x154]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x10c]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x154]
call sub.MFC42.DLL_CString::CString
lea ebx, [esp + 0xbd]
mov dword [esp + 0x30], 5
lea esi, [ebx - 1]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x4068f1
mov al, byte [edx + esi]
cmp al, 0xa1
je 0x4068d1
cmp al, 0xa8
jne 0x4068e0
mov al, byte [edx + ebx]
cmp al, 0xf6
je 0x4068dc
cmp al, 0x80
jne 0x4068e0
inc dword [esp + 0x34]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x4068c6
mov eax, dword [esp + 0x30]
add ebx, 0x14
dec eax
mov dword [esp + 0x30], eax
jne 0x4068b3
mov ecx, dword [esp + 0x34]
lea eax, [ecx - 5]
cmp eax, 8
ja case.0x40690f.6
jmp dword [eax*4 + 0x409f54]
mov dword [esp + 0x10], 1
jmp case.0x40690f.6
mov dword [esp + 0x10], 4
jmp case.0x40690f.6
mov dword [esp + 0x10], 7
jmp case.0x40690f.6
mov dword [esp + 0x10], 8
jmp case.0x40690f.6
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je case.0x40690f.6
mov al, byte [esp + edx + 0xd0]
cmp al, 0xa1
je 0x406974
cmp al, 0xa8
jne 0x406984
mov al, byte [esp + edx + 0xd1]
cmp al, 0xf6
je 0x406983
cmp al, 0x80
jne 0x406984
inc esi
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406965
cmp esi, 1
jne 0x4069ac
mov dword [esp + 0x10], 6
jmp case.0x40690f.6
cmp esi, 2
jne case.0x40690f.6
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406a13
mov al, byte [esp + edx + 0xd0]
cmp al, 0xa1
je 0x4069d9
cmp al, 0xa8
jne 0x4069e9
mov al, byte [esp + edx + 0xd1]
cmp al, 0xf6
je 0x4069e8
cmp al, 0x80
jne 0x4069e9
inc esi
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x4069ca
cmp esi, 1
jne 0x406a0e
mov dword [esp + 0x10], 9
jmp case.0x40690f.6
cmp esi, 2
jne case.0x40690f.6
mov dword [esp + 0x10], 0
jmp case.0x40690f.6
mov al, byte [esp + 0xd2]
cmp al, 0xa1
je 0x406a2c
cmp al, 0xa8
jne case.0x40690f.6
mov al, byte [esp + 0xd3]
cmp al, 0xf6
je 0x406a6d
cmp al, 0x80
je 0x406a6d
mov al, byte [esp + 0xfa]
cmp al, 0xa1
je 0x406a4a
cmp al, 0xa8
jne case.0x40690f.6
mov al, byte [esp + 0xfb]
cmp al, 0xf6
je 0x406a63
cmp al, 0x80
je 0x406a63
mov dword [esp + 0x10], 3
jmp case.0x40690f.6
mov dword [esp + 0x10], 2
jmp case.0x40690f.6
mov dword [esp + 0x10], 5
lea ecx, [esp + 0x14]
mov byte [esp + 0x2a30], 0
call sub.MFC42.DLL_CString::CString
jmp 0x4071a5
mov edi, 0x40ede8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
inc eax
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
push eax
lea eax, [esp + 0x160]
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
mov esi, dword [sym.imp.MSVCRT.dll_strncpy]
push 0x13
lea ecx, [esp + 0xc0]
push eax
push ecx
call esi
add esp, 0xc
lea ecx, [esp + 0x15c]
call sub.MFC42.DLL_CString::CString
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
inc eax
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x164]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
push 0x13
lea edx, [esp + 0xd4]
push eax
push edx
call esi
add esp, 0xc
lea ecx, [esp + 0x164]
call sub.MFC42.DLL_CString::CString
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
inc eax
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
lea edx, [esp + 0x16c]
push eax
push edx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
push 0x13
push eax
lea eax, [esp + 0xec]
push eax
call esi
add esp, 0xc
lea ecx, [esp + 0x16c]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Find
inc eax
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
push eax
lea eax, [esp + 0x178]
push eax
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
push 0x13
lea ecx, [esp + 0xfc]
push eax
push ecx
call esi
add esp, 0xc
lea ecx, [esp + 0x174]
call sub.MFC42.DLL_CString::CString
lea edx, [esp + 0x1c]
lea ecx, [esp + 0x14]
push edx
call sub.MFC42.DLL_CString::Find
inc eax
lea ecx, [esp + 0x14]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x14]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x158]
push eax
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
push 0x13
lea edx, [esp + 0x110]
push eax
push edx
call esi
add esp, 0xc
lea ecx, [esp + 0x158]
call sub.MFC42.DLL_CString::CString
lea ebx, [esp + 0xbd]
mov dword [esp + 0x30], 5
lea esi, [ebx - 1]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406cbd
mov al, byte [edx + esi]
cmp al, 0xa1
je 0x406c9d
cmp al, 0xa8
jne 0x406cac
mov al, byte [edx + ebx]
cmp al, 0xf6
je 0x406ca8
cmp al, 0x80
jne 0x406cac
inc dword [esp + 0x34]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406c92
mov eax, dword [esp + 0x30]
add ebx, 0x14
dec eax
mov dword [esp + 0x30], eax
jne 0x406c7f
mov eax, dword [esp + 0x34]
add eax, 0xfffffffb
cmp eax, 8
ja case.0x406cdb.6
jmp dword [eax*4 + 0x409f78]
mov dword [esp + 0x10], 1
jmp case.0x406cdb.6
mov dword [esp + 0x10], 4
jmp case.0x406cdb.6
mov dword [esp + 0x10], 7
jmp case.0x406cdb.6
mov dword [esp + 0x10], 8
jmp case.0x406cdb.6
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je case.0x406cdb.6
mov al, byte [esp + edx + 0xd0]
cmp al, 0xa1
je 0x406d40
cmp al, 0xa8
jne 0x406d50
mov al, byte [esp + edx + 0xd1]
cmp al, 0xf6
je 0x406d4f
cmp al, 0x80
jne 0x406d50
inc esi
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406d31
cmp esi, 1
jne 0x406d78
mov dword [esp + 0x10], 6
jmp case.0x406cdb.6
cmp esi, 2
jne case.0x406cdb.6
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406de6
mov al, byte [esp + edx + 0xd0]
cmp al, 0xa1
je 0x406da5
cmp al, 0xa8
jne 0x406db5
mov al, byte [esp + edx + 0xd1]
cmp al, 0xf6
je 0x406db4
cmp al, 0x80
jne 0x406db5
inc esi
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406d96
cmp esi, 1
jne 0x406ddd
mov dword [esp + 0x10], 9
jmp case.0x406cdb.6
cmp esi, 2
jne case.0x406cdb.6
mov dword [esp + 0x10], 0
jmp case.0x406cdb.6
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406e2d
cmp byte [esp + edx + 0xd0], 0xa1
jne 0x406e28
lea edi, [esp + 0xd0]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406e08
cmp edx, 5
jae 0x406e37
mov dword [esp + 0x10], 5
jmp case.0x406cdb.6
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
je 0x406e71
cmp byte [esp + edx + 0xf8], 0xa1
jne 0x406e6c
lea edi, [esp + 0xf8]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jb 0x406e4c
cmp edx, 5
jae 0x406e7b
mov dword [esp + 0x10], 2
jmp case.0x406cdb.6
mov dword [esp + 0x10], 3
lea ecx, [esp + 0x14]
mov byte [esp + 0x2a30], 0
call sub.MFC42.DLL_CString::CString
jmp 0x4071a5
lea ecx, [esp + 0x3e8]
push 0x40ede4
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406f09
lea edx, [esp + 0x3e8]
push 0x40ede4
push edx
call ebp
add eax, 3
push 0x14
push eax
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x14
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x406ee2
cmp cl, 0x39
jle 0x406ee5
inc eax
jmp 0x406ed6
mov cl, byte [eax]
mov dl, byte [eax + 1]
lea eax, [esp + 0x20]
mov byte [esp + 0x20], cl
push eax
mov byte [esp + 0x25], dl
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [esp + 0x10], eax
jmp 0x4071a5
lea ecx, [esp + 0x3e8]
push 0x40edd8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406f55
lea edx, [esp + 0x3e8]
push 0x40edd8
push edx
call ebp
add eax, 9
push 0x14
push eax
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x14
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x406f52
cmp cl, 0x39
jle 0x406ee5
inc eax
jmp 0x406f46
lea ecx, [esp + 0x3e8]
push 0x40edc8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x406fbb
lea edx, [esp + 0x3e8]
push 0x40edc4
push edx
call ebp
xor ecx, ecx
add eax, 2
mov dword [esp + 0x44], ecx
push 5
mov dword [esp + 0x4c], ecx
lea edx, [esp + 0x48]
mov dword [esp + 0x50], ecx
push eax
mov dword [esp + 0x58], ecx
push edx
mov dword [esp + 0x60], ecx
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x14
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x406fb8
cmp cl, 0x39
jle 0x406ee5
inc eax
jmp 0x406fa8
lea ecx, [esp + 0x3e8]
push 0x40edb8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40700b
lea edx, [esp + 0x3e8]
push 0x40edb8
push edx
call ebp
add eax, 0xa
push 0x14
push eax
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x14
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407008
cmp cl, 0x39
jle 0x406ee5
inc eax
jmp 0x406ff8
lea ecx, [esp + 0x3e8]
push 0x40edac
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40705b
lea edx, [esp + 0x3e8]
push 0x40edac
push edx
call ebp
add eax, 8
push 0x14
push eax
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x14
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407058
cmp cl, 0x39
jle 0x406ee5
inc eax
jmp 0x407048
lea ecx, [esp + 0x3e8]
push 0x40eda4
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x40708b
lea edx, [esp + 0x3e8]
push 0x40ed9c
push edx
call ebp
add esp, 8
test eax, eax
je switch.0x004071b4
lea eax, [esp + 0x3e8]
push 0x40eda4
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4070b7
lea ecx, [esp + 0x3e8]
push 0x40ed9c
push ecx
call ebp
add esp, 8
mov esi, eax
add esi, 6
push 0x40eda4
push esi
call ebp
add esp, 8
test eax, eax
je 0x4070e5
push 0x40eda4
push esi
call ebp
add eax, 6
push 0x40eda4
mov esi, eax
push esi
call ebp
add esp, 0x10
test eax, eax
jne 0x4070c9
push 0x40ed9c
push esi
call ebp
add esp, 8
test eax, eax
je 0x407110
push 0x40ed9c
push esi
call ebp
add eax, 6
push 0x40ed9c
mov esi, eax
push esi
call ebp
add esp, 0x10
test eax, eax
jne 0x4070f4
mov edi, dword [sym.imp.MSVCRT.dll_strncpy]
push 0x14
lea edx, [esp + 0x40]
push esi
push edx
call edi
add esp, 0xc
lea eax, [esp + 0x3c]
xor edx, edx
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407135
cmp cl, 0x39
jle 0x40713e
cmp edx, 0x14
jge 0x407141
inc eax
inc edx
jmp 0x407129
cmp edx, 0x14
jne 0x40717c
xor eax, eax
add esi, 0x14
mov dword [esp + 0x3c], eax
push 0x14
mov dword [esp + 0x44], eax
lea ecx, [esp + 0x40]
mov dword [esp + 0x48], eax
push esi
mov dword [esp + 0x50], eax
push ecx
mov dword [esp + 0x58], eax
call edi
add esp, 0xc
lea eax, [esp + 0x3c]
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407179
cmp cl, 0x39
jle 0x40717c
inc eax
jmp 0x40716d
mov dl, byte [eax]
mov al, byte [eax + 1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x20], dl
push ecx
mov byte [esp + 0x25], al
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov dword [esp + 0x10], eax
jmp 0x4071a5
mov edx, dword [esp + 0x14]
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x10]
cmp eax, 0x14
mov ebx, eax
ja case.default.0x4071b4
jmp dword [ebx*4 + 0x409f9c]
lea eax, [esp + 0x3e8]
push 0x40ed94
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ed90
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40eeec
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40eed0
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40eedc
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40eee4
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ed8c
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40eee8
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40eecc
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40eee0
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40eed8
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40ed88
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed84
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40eec8
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed80
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40eed4
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ed7c
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed78
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed74
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed70
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ed6c
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ed68
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed64
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed60
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed5c
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ed58
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed54
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed50
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed4c
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40ed48
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed44
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed40
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ed3c
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ed38
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed34
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed30
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed2c
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ed28
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea edx, [esp + 0x3e8]
push 0x40ed24
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed20
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ed1c
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40ed14
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ed10
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ed08
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ed04
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ecfc
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ecf8
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40ecf0
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ecec
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ece4
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ece0
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ecd8
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ecd4
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40eccc
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40ecc8
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ecc0
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ecbc
jmp 0x40777b
lea eax, [esp + 0x3e8]
push 0x40ecb4
push eax
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea ecx, [esp + 0x3e8]
push 0x40ecb0
push ecx
jmp 0x407783
lea edx, [esp + 0x3e8]
push 0x40eca8
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
lea eax, [esp + 0x3e8]
push 0x40eca4
push eax
jmp 0x407783
lea ecx, [esp + 0x3e8]
push 0x40ec9c
push ecx
call ebp
mov edi, eax
add esp, 8
test edi, edi
jne 0x40778e
push 0x40ec98
lea edx, [esp + 0x3ec]
push edx
call ebp
mov edi, eax
add esp, 8
test edi, edi
je case.default.0x4071b4
push 0x3e
push edi
call dword [sym.imp.MSVCRT.dll_strchr]
mov edx, eax
add esp, 8
mov byte [edx], 0
mov al, byte [edi]
test al, al
je 0x4077b0
inc edi
cmp al, 0x2f
je 0x4077b0
mov al, byte [edi]
test al, al
jne 0x4077a5
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
lea esi, [esp + 0x88]
sub edi, ecx
mov eax, ecx
mov dword [esp + 0x30], esi
mov esi, edi
mov edi, dword [esp + 0x30]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [edx], 0x3e
mov esi, dword [sym.imp.MSVCRT.dll_sprintf]
push ebx
lea ecx, [esp + 0x64]
push str.__d___
push ecx
call esi
lea edx, [esp + 0x6c]
lea eax, [esp + 0x3f4]
push edx
push eax
call ebp
add esp, 0x14
test eax, eax
jne 0x407816
push ebx
lea ecx, [esp + 0x64]
push 0x40ec84
push ecx
call esi
add esp, 0xc
lea edx, [esp + 0x60]
lea eax, [esp + 0x3e8]
push edx
push eax
call ebp
add esp, 8
test eax, eax
jne 0x40783c
push ebx
lea ecx, [esp + 0x64]
push 0x40ec7c
push ecx
call esi
add esp, 0xc
lea edx, [esp + 0x60]
lea eax, [esp + 0x3e8]
push edx
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407862
push ebx
lea ecx, [esp + 0x64]
push str._d__
push ecx
call esi
add esp, 0xc
lea edx, [esp + 0x60]
lea eax, [esp + 0x3e8]
push edx
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
je 0x4078bf
push 0x3e
push esi
call dword [sym.imp.MSVCRT.dll_strchr]
mov byte [eax], 0
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
add esp, 8
lea edx, [esp + 0x88]
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea esi, [esi + ecx - 1]
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x50]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x64]
push 0x3f3
push edx
call fcn.00403040
mov ebp, dword [esp + 0x50]
push 0x20
lea eax, [esp + 0x70]
lea ebx, [ebp + 0x414]
push ebx
push eax
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebp + 0x434]
push ecx
lea ecx, [esp + 0xb4]
push edx
push ecx
call fcn.00402e20
mov eax, dword [ebp + 0xc]
add esp, 0x34
cmp eax, 9
jl 0x40792f
mov dword [ebp + 0xc], 1
jmp 0x407933
inc eax
mov dword [ebp + 0xc], eax
mov edx, dword [ebp + 0xc]
lea eax, [ebp + 0x434]
push eax
push ebx
lea esi, [ebp + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x320
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
mov eax, dword [ebp + 0x8dc]
not ecx
dec ecx
push ecx
push esi
push eax
call sub.WSOCK32.dll_send
jmp 0x409e23
mov dword [esp + 0x30], 0
lea ecx, [esp + 0x88]
push str.InPutInteger
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x407a49
lea edx, [esp + 0x88]
push str.inputinteger
push edx
call ebp
add esp, 8
test eax, eax
jne 0x407a49
lea eax, [esp + 0x88]
push str.CHECKNO
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407a49
lea ecx, [esp + 0x88]
push str.CheckNo
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x407a49
mov edx, dword [esp + 0x34]
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
push pe_nt_image_headers32
push edx
call esi
mov ebx, eax
push 0x3e
push ebx
call esi
mov edx, eax
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
add esp, 0x10
mov byte [edx], 0
repne scasb al, byte es:[edi]
not ecx
lea esi, [esp + 0x88]
sub edi, ecx
mov eax, ecx
mov dword [esp + 0x34], esi
mov esi, edi
mov edi, dword [esp + 0x34]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x30]
and ecx, 3
inc ebx
inc eax
mov dword [esp + 0x34], ebx
rep movsb byte es:[edi], byte [esi]
cmp eax, 0xa
mov byte [edx], 0x3e
mov dword [esp + 0x30], eax
jl 0x407985
mov al, byte [0x40f540]
xor ecx, ecx
mov dword [esp + 0x3d], ecx
mov byte [esp + 0x3c], al
mov dword [esp + 0x41], ecx
mov byte [esp + 0xbc], al
mov byte [esp + 0x45], cl
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0xbd]
rep stosd dword es:[edi], eax
lea edx, [esp + 0x3e8]
push 0x40ef70
push edx
stosb byte es:[edi], al
call ebp
add esp, 8
test eax, eax
jne 0x407ad0
lea eax, [esp + 0x3e8]
push 0x40ef6c
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407ad0
lea ecx, [esp + 0x3e8]
push 0x40ef68
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x407ad0
lea edx, [esp + 0x3e8]
push 0x40ef64
push edx
call ebp
add esp, 8
test eax, eax
je 0x407aea
lea eax, [esp + 0x3e8]
push 0x40ef60
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407efd
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
lea ecx, [esp + 0x3e8]
push 0x2b
push ecx
call esi
add esp, 8
test eax, eax
jne 0x407b29
lea edx, [esp + 0x3e8]
push 0x2d
push edx
call esi
add esp, 8
test eax, eax
jne 0x407b29
lea eax, [esp + 0x3e8]
push 0x2a
push eax
call esi
add esp, 8
test eax, eax
je 0x407b40
lea ecx, [esp + 0x3e8]
push 0x3d
push ecx
call esi
add esp, 8
test eax, eax
jne 0x407efd
mov ebx, dword [esp + 0x38]
cmp byte [ebx + 0xe74], 1
jne 0x407bc9
lea edx, [ebx + 0xe75]
lea eax, [esp + 0x88]
push edx
push eax
lea ecx, [esp + 0xc4]
push str._s_r_s
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edx, dword [esp + 0x60]
push 0
push 0
push 0
push edx
lea eax, [esp + 0x74]
push 0x3f3
push eax
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea ecx, [esp + 0x80]
push ebp
push ecx
call fcn.00402fe0
lea edi, [esp + 0xf0]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
lea edx, [esp + 0xfc]
jmp 0x405ec6
lea edx, [esp + 0x3e8]
push 0x40ec68
push edx
call ebp
add esp, 8
test eax, eax
jne 0x407e1f
lea eax, [esp + 0x3e8]
push 0x40ec60
push eax
call ebp
add esp, 8
test eax, eax
jne 0x407e1f
lea ecx, [esp + 0x3e8]
push 0x40ec58
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x407e1f
lea edx, [esp + 0x3e8]
push 0x40ec4c
push edx
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea eax, [esp + 0x3e8]
push 0x40ec44
push eax
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea ecx, [esp + 0x3e8]
push 0x40ec3c
push ecx
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea edx, [esp + 0x3e8]
push 0x40ec30
push edx
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea eax, [esp + 0x3e8]
push 0x40ec24
push eax
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea ecx, [esp + 0x3e8]
push 0x40ec18
push ecx
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x407cc7
lea edx, [esp + 0x3e8]
push 0x40ec0c
push edx
call ebp
mov edx, eax
add esp, 8
test edx, edx
je 0x409e23
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test esi, esi
jle 0x407d24
mov cl, byte [eax + edx]
cmp cl, 0x30
jl 0x407d02
cmp cl, 0x39
jg 0x407d02
mov cl, byte [eax + edx + 1]
cmp cl, 0x30
jl 0x407d02
cmp cl, 0x39
jg 0x407d02
mov cl, byte [eax + edx + 2]
cmp cl, 0x30
jl 0x407d02
cmp cl, 0x39
jle 0x407d09
inc eax
cmp eax, esi
jl 0x407cd9
jmp 0x407d24
xor esi, esi
add eax, edx
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407d1e
cmp cl, 0x39
jg 0x407d1e
mov byte [esp + esi + 0x3c], cl
inc eax
inc esi
cmp esi, 0x14
jl 0x407d0d
lea eax, [esp + 0x3e8]
push str._________
push eax
call ebp
mov edx, eax
add esp, 8
test edx, edx
je 0x407d9c
sub edx, 0xa
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
test esi, esi
jle 0x407d9c
mov cl, byte [eax + edx]
cmp cl, 0x30
jl 0x407d7a
cmp cl, 0x39
jg 0x407d7a
mov cl, byte [eax + edx + 1]
cmp cl, 0x30
jl 0x407d7a
cmp cl, 0x39
jg 0x407d7a
mov cl, byte [eax + edx + 2]
cmp cl, 0x30
jl 0x407d7a
cmp cl, 0x39
jle 0x407d81
inc eax
cmp eax, esi
jl 0x407d51
jmp 0x407d9c
xor esi, esi
add eax, edx
mov cl, byte [eax]
cmp cl, 0x30
jl 0x407d96
cmp cl, 0x39
jg 0x407d96
mov byte [esp + esi + 0x3c], cl
inc eax
inc esi
cmp esi, 0x14
jl 0x407d85
lea ecx, [esp + 0x3c]
lea edx, [esp + 0x88]
push ecx
push edx
lea eax, [esp + 0xc4]
push str._s_r_s
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ecx, dword [esp + 0x60]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x74]
push 0x3f3
push edx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea eax, [esp + 0x80]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0xf0]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebx + 0x434]
push ecx
lea ecx, [esp + 0xf8]
push edx
push ecx
call fcn.00402e20
add esp, 0x44
jmp 0x404dd4
lea ecx, [esp + 0x88]
lea edx, [esp + 0xbc]
push ecx
push 0x40ebfc
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov eax, dword [esp + 0x5c]
push 0
push 0
push 0
push eax
lea ecx, [esp + 0x70]
push 0x3f3
push ecx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea edx, [esp + 0x7c]
push ebp
push edx
call fcn.00402fe0
lea edi, [esp + 0xec]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
lea eax, [esp + 0xf4]
push edx
push eax
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x40
cmp eax, 9
jl 0x407ea6
mov dword [ebx + 0xc], 1
jmp 0x407eaa
inc eax
mov dword [ebx + 0xc], eax
mov ecx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push ecx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ebp, dword [sym.imp.KERNEL32.DLL_Sleep]
add esp, 0x14
push 0x3e8
call ebp
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebx + 0x8dc]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0
push ecx
push esi
push edx
call sub.WSOCK32.dll_send
push 0x12c
call ebp
jmp 0x409bd6
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x88]
push ecx
push edx
lea eax, [esp + 0xc4]
push str._s_r_d
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ecx, dword [esp + 0x60]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x74]
push 0x3f3
push edx
call fcn.00403040
mov ebx, dword [esp + 0x60]
push 0x20
lea eax, [esp + 0x80]
lea ebp, [ebx + 0x414]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0xf0]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebx + 0x434]
push ecx
lea ecx, [esp + 0xf8]
push edx
push ecx
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x44
cmp eax, 9
jl 0x407f90
mov dword [ebx + 0xc], 1
jmp 0x407f94
inc eax
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0xbb8
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x8dc]
not ecx
dec ecx
push ecx
push esi
push eax
call sub.WSOCK32.dll_send
jmp 0x409e23
mov dl, byte [0x40f540]
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0xbd]
mov byte [esp + 0xbc], dl
mov byte [esp + 0x384], dl
rep stosd dword es:[edi], eax
stosb byte es:[edi], al
mov ecx, 0x18
xor eax, eax
lea edi, [esp + 0x385]
push 0x40ef70
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x3ec]
push ecx
stosb byte es:[edi], al
call ebp
add esp, 8
test eax, eax
jne 0x40806e
lea edx, [esp + 0x3e8]
push 0x40ef6c
push edx
call ebp
add esp, 8
test eax, eax
jne 0x40806e
lea eax, [esp + 0x3e8]
push 0x40ef68
push eax
call ebp
add esp, 8
test eax, eax
jne 0x40806e
lea ecx, [esp + 0x3e8]
push 0x40ef64
push ecx
call ebp
add esp, 8
test eax, eax
je 0x408084
lea edx, [esp + 0x3e8]
push 0x40ef60
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4080d6
mov esi, dword [sym.imp.MSVCRT.dll_strchr]
lea eax, [esp + 0x3e8]
push 0x2b
push eax
call esi
add esp, 8
test eax, eax
jne 0x4080c3
lea ecx, [esp + 0x3e8]
push 0x2d
push ecx
call esi
add esp, 8
test eax, eax
jne 0x4080c3
lea edx, [esp + 0x3e8]
push 0x2a
push edx
call esi
add esp, 8
test eax, eax
je 0x4080f1
lea eax, [esp + 0x3e8]
push 0x3d
push eax
call esi
add esp, 8
test eax, eax
je 0x4080f1
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0xbc]
push ecx
push 0x40ebf0
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
lea eax, [esp + 0x3e8]
push 0x40ebe8
push eax
call ebp
add esp, 8
test eax, eax
jne 0x408691
lea ecx, [esp + 0x3e8]
push 0x40ebdc
push ecx
call ebp
add esp, 8
test eax, eax
jne 0x408691
lea edx, [esp + 0x3e8]
push 0x40edc4
push edx
call ebp
add esp, 8
test eax, eax
je 0x408190
lea eax, [esp + 0x3e8]
push 0x40edc4
push eax
call ebp
lea ecx, [esp + 0x3f0]
push 0x40ebd8
mov esi, eax
push ecx
call ebp
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
add esi, 2
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, esi
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0xcc]
sub ecx, edx
push ecx
push esi
push eax
call dword [sym.imp.MSVCRT.dll_strncpy]
add esp, 0x1c
jmp 0x4085ab
lea ecx, [esp + 0x3e8]
push 0x40ebd4
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4081c6
lea edx, [esp + 0x3e8]
push 0x40ebd4
push edx
call ebp
mov esi, eax
lea eax, [esp + 0x3f0]
push 0x40f18c
push eax
jmp 0x408159
lea ecx, [esp + 0x3e8]
push 0x40ebc8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40829b
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString_1
lea edx, [esp + 0x3e8]
lea ecx, [esp + 0x10]
push edx
mov byte [esp + 0x2a34], 2
call sub.MFC42.DLL_CString::operator
push 0x40ebc8
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
test eax, eax
jl 0x408285
push 0x40ebc8
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 8
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
push 0x40ebc4
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
push eax
lea eax, [esp + 0x154]
push eax
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0xbc]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x150]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x2a30], 0
call sub.MFC42.DLL_CString::CString
jmp 0x4085ab
lea ecx, [esp + 0x3e8]
push 0x40ebbc
push ecx
call ebp
add esp, 8
test eax, eax
je 0x408415
lea edx, [esp + 0x3e8]
push 0x40ebb4
push edx
call ebp
add esp, 8
test eax, eax
je 0x408415
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0xbc]
push 0x40ebb0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x3ec]
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x408315
lea ecx, [esp + 0x3e8]
push 0x40ebac
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
je 0x409e23
xor edx, edx
mov edi, dword [sym.imp.MSVCRT.dll_strncpy]
mov dword [esp + 0x61], edx
lea eax, [esi - 0xa]
mov dword [esp + 0x65], edx
push 0xa
mov dword [esp + 0x6d], edx
lea ecx, [esp + 0x64]
mov dword [esp + 0x71], edx
push eax
mov dword [esp + 0x79], edx
push ecx
mov byte [esp + 0x6c], 0
mov byte [esp + 0x81], dl
call edi
add esi, 2
push 0xa
lea edx, [esp + 0x7b]
push esi
push edx
call edi
lea eax, [esp + 0x400]
push 0x40eba4
push eax
xor esi, esi
call ebp
add esp, 0x20
test eax, eax
je 0x408393
mov edi, dword [sym.imp.MSVCRT.dll_atoi]
lea ecx, [esp + 0x6b]
push ecx
call edi
lea edx, [esp + 0x64]
mov esi, eax
push edx
call edi
add esp, 8
xor ecx, ecx
cmp eax, esi
setle cl
mov esi, ecx
jmp 0x408399
mov edi, dword [sym.imp.MSVCRT.dll_atoi]
lea edx, [esp + 0x3e8]
push 0x40eb9c
push edx
call ebp
add esp, 8
test eax, eax
je 0x4083cb
lea eax, [esp + 0x6b]
push eax
call edi
lea ecx, [esp + 0x64]
mov esi, eax
push ecx
call edi
add esp, 8
xor edx, edx
cmp eax, esi
setge dl
mov esi, edx
lea eax, [esi + esi*4]
xor edx, edx
lea ecx, [esp + eax*2 + 0x60]
xor eax, eax
add esi, ecx
or ecx, 0xffffffff
mov edi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
test ecx, ecx
jle 0x4085ab
lea ebx, [esp + 0xbc]
mov al, byte [esi + edx]
cmp al, 0x30
jl 0x4083ff
cmp al, 0x39
jg 0x4083ff
mov byte [ebx], al
inc ebx
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jl 0x4083f1
jmp 0x4085ab
lea edx, [esp + 0x3e8]
push 0x40eb94
push edx
call ebp
add esp, 8
test eax, eax
je 0x40856c
lea eax, [esp + 0x3e8]
push 0x40eb8c
push eax
call ebp
add esp, 8
test eax, eax
je 0x40856c
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0xbc]
push 0x40eb7c
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x3ec]
push ecx
stosw word es:[edi], ax
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x408487
lea edx, [esp + 0x3e8]
push 0x40eb94
push edx
call ebp
add esp, 8
mov edx, eax
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
test ecx, ecx
jle 0x4084c5
lea ebx, [esp + 0xbc]
mov al, byte [esi + edx]
cmp al, 0x30
jl 0x4084ae
cmp al, 0x39
jg 0x4084ae
mov byte [ebx], al
inc ebx
cmp byte [esi + edx], 0x40
je 0x4084c5
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
inc esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp esi, ecx
jl 0x4084a0
lea eax, [esp + 0x3e8]
push 0x40eb74
push eax
mov ebx, 1
call ebp
add esp, 8
test eax, eax
je 0x4084e2
xor ebx, ebx
lea edi, [esp + 0xbc]
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
test ecx, ecx
jle 0x4085ab
lea edi, [esp + 0xbc]
or ecx, 0xffffffff
xor eax, eax
mov edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp esi, ecx
jge 0x408554
mov al, byte [esp + edx + 0xbc]
mov cl, byte [esp + esi + 0xbc]
test ebx, ebx
je 0x40852c
cmp al, cl
jle 0x40853e
jmp 0x408530
cmp al, cl
jge 0x40853e
mov byte [esp + edx + 0xbc], cl
mov byte [esp + esi + 0xbc], al
lea edi, [esp + 0xbc]
or ecx, 0xffffffff
xor eax, eax
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp edx, ecx
jl 0x408514
lea edi, [esp + 0xbc]
or ecx, 0xffffffff
xor eax, eax
inc esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp esi, ecx
jl 0x4084fd
jmp 0x4085ab
lea ecx, [esp + 0x3e8]
push 0x40eb68
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4085ab
mov edi, str.adfe
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xbc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0xbc]
lea edx, [esp + 0x88]
push ecx
push edx
lea eax, [esp + 0x38c]
push str._s_r_s
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ecx, dword [esp + 0x60]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x74]
push 0x3f3
push edx
call fcn.00403040
mov esi, dword [esp + 0x60]
push 0x20
lea eax, [esp + 0x80]
lea ebp, [esi + 0x414]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0x3b8]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea ebx, [esi + 0x434]
push ecx
lea ecx, [esp + 0x3c0]
push ebx
push ecx
call fcn.00402e20
mov eax, dword [esi + 0xc]
add esp, 0x44
cmp eax, 9
jl 0x408641
mov dword [esi + 0xc], 1
jmp 0x408645
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x38]
push ebx
push ebp
mov edx, dword [eax + 0xc]
lea esi, [eax + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x7d0
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x3c]
not ecx
dec ecx
push ecx
mov ecx, dword [eax + 0x8dc]
push esi
push ecx
call sub.WSOCK32.dll_send
jmp 0x409e23
mov bl, byte [0x40eb5c]
mov ebp, dword [0x40eb48]
mov byte [esp + 0x1a2], bl
mov byte [esp + 0x1ac], bl
mov byte [esp + 0x1b6], bl
xor bl, bl
mov byte [esp + 0x1b7], bl
mov byte [esp + 0x1c1], bl
mov ebx, dword [0x40eb4c]
mov eax, dword [0x40eb3c]
mov dword [esp + 0x1c6], ebx
mov bl, byte [0x40eb50]
mov byte [esp + 0x1ca], bl
mov ebx, dword [0x40eb30]
mov dword [esp + 0x1cc], ebx
mov ebx, dword [0x40eb34]
mov dword [esp + 0x1d0], ebx
mov bl, byte [0x40eb38]
mov byte [esp + 0x1d4], bl
mov ebx, dword [0x40eb4c]
mov dword [esp + 0x1da], ebx
mov bl, byte [0x40eb50]
mov byte [esp + 0x1de], bl
mov byte [esp + 0x1e8], bl
mov ebx, dword [0x40eb24]
mov ecx, dword [0x40eb40]
mov dword [esp + 0x1ea], ebx
mov ebx, dword [0x40eb28]
mov dword [esp + 0x1ee], ebx
mov bl, byte [0x40eb2c]
mov byte [esp + 0x1f2], bl
xor bl, bl
mov byte [esp + 0x1f3], bl
mov byte [esp + 0x1fd], bl
mov ebx, dword [0x40eb1c]
mov dl, byte [0x40eb44]
mov dword [esp + 0x202], ebx
mov bl, byte [0x40eb20]
mov esi, dword [0x40eb54]
mov edi, dword [0x40eb58]
mov byte [esp + 0x206], bl
xor bl, bl
mov byte [esp + 0x207], bl
mov byte [esp + 0x211], bl
mov ebx, dword [0x40eb0c]
mov dword [esp + 0x1c2], ebp
mov dword [esp + 0x1d6], ebp
mov dword [esp + 0x1e0], ebp
mov ebp, dword [0x40eb4c]
mov dword [esp + 0x212], ebx
mov ebx, dword [0x40eb10]
mov dword [esp + 0x1e4], ebp
mov ebp, dword [0x40eb18]
mov dword [esp + 0x216], ebx
mov bl, byte [0x40eb14]
mov dword [esp + 0x190], eax
mov dword [esp + 0x194], ecx
mov byte [esp + 0x198], dl
mov byte [esp + 0x199], 0
mov dword [esp + 0x19a], esi
mov dword [esp + 0x19e], edi
mov byte [esp + 0x1a3], 0
mov dword [esp + 0x1a4], esi
mov dword [esp + 0x1a8], edi
mov byte [esp + 0x1ad], 0
mov dword [esp + 0x1ae], esi
mov dword [esp + 0x1b2], edi
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1bc], ecx
mov byte [esp + 0x1c0], dl
mov byte [esp + 0x1cb], 0
mov byte [esp + 0x1d5], 0
mov byte [esp + 0x1df], 0
mov byte [esp + 0x1e9], 0
mov dword [esp + 0x1f4], eax
mov dword [esp + 0x1f8], ecx
mov byte [esp + 0x1fc], dl
mov dword [esp + 0x1fe], ebp
mov dword [esp + 0x208], eax
mov dword [esp + 0x20c], ecx
mov byte [esp + 0x210], dl
mov byte [esp + 0x21a], bl
xor bl, bl
mov byte [esp + 0x21b], bl
mov byte [esp + 0x225], bl
mov byte [esp + 0x22f], bl
mov ebx, dword [0x40eb1c]
mov dword [esp + 0x234], ebx
mov bl, byte [0x40eb20]
mov byte [esp + 0x238], bl
xor bl, bl
mov byte [esp + 0x239], bl
mov byte [esp + 0x243], bl
mov ebx, dword [0x40eb1c]
mov dword [esp + 0x21c], eax
mov dword [esp + 0x248], ebx
mov bl, byte [0x40eb20]
mov byte [esp + 0x24c], bl
xor bl, bl
mov byte [esp + 0x24d], bl
mov byte [esp + 0x257], bl
mov bl, byte [0x40eb5c]
mov dword [esp + 0x220], ecx
mov byte [esp + 0x260], bl
mov byte [esp + 0x26a], bl
xor bl, bl
mov byte [esp + 0x224], dl
mov byte [esp + 0x26b], bl
mov byte [esp + 0x275], bl
mov ebx, dword [0x40eb1c]
mov dword [esp + 0x226], eax
mov dword [esp + 0x27a], ebx
mov bl, byte [0x40eb20]
mov byte [esp + 0x27e], bl
mov ebx, dword [0x40eb1c]
mov dword [esp + 0x284], ebx
mov bl, byte [0x40eb20]
mov byte [esp + 0x288], bl
xor bl, bl
mov byte [esp + 0x289], bl
mov byte [esp + 0x293], bl
mov ebx, dword [0x40eb0c]
mov dword [esp + 0x22a], ecx
mov dword [esp + 0x294], ebx
mov ebx, dword [0x40eb10]
mov dword [esp + 0x298], ebx
mov bl, byte [0x40eb14]
mov byte [esp + 0x29c], bl
xor bl, bl
mov byte [esp + 0x29d], bl
mov byte [esp + 0x2a7], bl
mov ebx, dword [0x40eb1c]
mov byte [esp + 0x22e], dl
mov dword [esp + 0x2ac], ebx
mov bl, byte [0x40eb20]
mov dword [esp + 0x230], ebp
mov dword [esp + 0x23a], eax
mov dword [esp + 0x23e], ecx
mov byte [esp + 0x242], dl
mov dword [esp + 0x244], ebp
mov dword [esp + 0x24e], eax
mov dword [esp + 0x252], ecx
mov byte [esp + 0x256], dl
mov dword [esp + 0x258], esi
mov dword [esp + 0x25c], edi
mov byte [esp + 0x261], 0
mov dword [esp + 0x262], esi
mov dword [esp + 0x266], edi
mov dword [esp + 0x26c], eax
mov dword [esp + 0x270], ecx
mov byte [esp + 0x274], dl
mov dword [esp + 0x276], ebp
mov byte [esp + 0x27f], 0
mov dword [esp + 0x280], ebp
mov dword [esp + 0x28a], eax
mov dword [esp + 0x28e], ecx
mov byte [esp + 0x292], dl
mov dword [esp + 0x29e], eax
mov dword [esp + 0x2a2], ecx
mov byte [esp + 0x2a6], dl
mov dword [esp + 0x2a8], ebp
mov byte [esp + 0x2b0], bl
xor bl, bl
mov dword [esp + 0x2b2], eax
mov byte [esp + 0x2b1], bl
mov byte [esp + 0x2bb], bl
mov byte [esp + 0x2c5], bl
mov ebx, dword [0x40eb0c]
mov dword [esp + 0x2c6], ebx
mov ebx, dword [0x40eb10]
mov dword [esp + 0x2ca], ebx
mov bl, byte [0x40eb14]
mov byte [esp + 0x2ce], bl
xor bl, bl
mov byte [esp + 0x2cf], bl
mov byte [esp + 0x2d9], bl
mov bl, byte [0x40eb5c]
mov dword [esp + 0x2b6], ecx
mov byte [esp + 0x2e2], bl
xor bl, bl
mov byte [esp + 0x2e3], bl
mov byte [esp + 0x2ed], bl
mov byte [esp + 0x2f7], bl
mov ebx, dword [0x40eb00]
mov dword [esp + 0x2f8], ebx
mov ebx, dword [0x40eb04]
mov dword [esp + 0x2fc], ebx
mov bl, byte [0x40eb08]
mov byte [esp + 0x300], bl
mov ebx, dword [0x40eaf4]
mov dword [esp + 0x302], ebx
mov ebx, dword [0x40eaf8]
mov dword [esp + 0x306], ebx
mov bl, byte [0x40eafc]
mov byte [esp + 0x30a], bl
mov ebx, dword [0x40eb48]
mov dword [esp + 0x30c], ebx
mov ebx, dword [0x40eb4c]
mov dword [esp + 0x310], ebx
mov bl, byte [0x40eb50]
mov byte [esp + 0x314], bl
mov ebx, dword [0x40eb48]
mov dword [esp + 0x316], ebx
mov ebx, dword [0x40eb4c]
mov dword [esp + 0x31a], ebx
mov bl, byte [0x40eb50]
mov byte [esp + 0x31e], bl
xor bl, bl
mov byte [esp + 0x31f], bl
mov byte [esp + 0x329], bl
mov bl, byte [0x40eb5c]
mov byte [esp + 0x2ba], dl
mov dword [esp + 0x2bc], eax
mov dword [esp + 0x2c0], ecx
mov byte [esp + 0x2c4], dl
mov dword [esp + 0x2d0], eax
mov dword [esp + 0x2d4], ecx
mov byte [esp + 0x2d8], dl
mov dword [esp + 0x2da], esi
mov dword [esp + 0x2de], edi
mov dword [esp + 0x2e4], eax
mov dword [esp + 0x2e8], ecx
mov byte [esp + 0x2ec], dl
mov dword [esp + 0x2ee], eax
mov dword [esp + 0x2f2], ecx
mov byte [esp + 0x2f6], dl
mov byte [esp + 0x301], 0
mov byte [esp + 0x30b], 0
mov byte [esp + 0x315], 0
mov dword [esp + 0x320], eax
mov dword [esp + 0x324], ecx
mov byte [esp + 0x328], dl
mov dword [esp + 0x32a], esi
mov dword [esp + 0x32e], edi
mov byte [esp + 0x332], bl
mov byte [esp + 0x333], 0
mov dword [esp + 0x334], eax
mov dword [esp + 0x338], ecx
mov byte [esp + 0x33c], dl
mov byte [esp + 0x33d], 0
mov dword [esp + 0x33e], esi
mov dword [esp + 0x342], edi
mov byte [esp + 0x346], bl
mov dword [esp + 0x348], eax
mov dword [esp + 0x34c], ecx
mov dword [esp + 0x352], eax
mov dword [esp + 0x356], ecx
mov dword [esp + 0x360], edi
mov dword [esp + 0x366], eax
mov dword [esp + 0x36a], ecx
mov dword [esp + 0x37a], eax
mov dword [esp + 0x37e], ecx
mov ecx, 0x7c
xor eax, eax
lea edi, [esp + 0x244d]
mov byte [esp + 0x244c], 0
mov byte [esp + 0x364], bl
rep stosd dword es:[edi], eax
xor bl, bl
mov dword [esp + 0x35c], esi
mov esi, dword [0x40eb1c]
mov byte [esp + 0x365], bl
stosw word es:[edi], ax
mov byte [esp + 0x36f], bl
mov bl, byte [0x40eb20]
lea ecx, [esp + 0x10]
mov byte [esp + 0x347], 0
mov byte [esp + 0x350], dl
mov byte [esp + 0x351], 0
mov byte [esp + 0x35a], dl
mov byte [esp + 0x35b], 0
mov byte [esp + 0x36e], dl
mov dword [esp + 0x370], ebp
mov dword [esp + 0x374], esi
mov byte [esp + 0x378], bl
mov byte [esp + 0x379], 0
mov byte [esp + 0x382], dl
mov byte [esp + 0x383], 0
stosb byte es:[edi], al
call sub.MFC42.DLL_CString::CString_1
lea edx, [esp + 0x3e8]
lea ecx, [esp + 0x10]
push edx
mov byte [esp + 0x2a34], 1
call sub.MFC42.DLL_CString::operator
mov edi, 0x40eaf0
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x24]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x24]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::Find
push eax
lea eax, [esp + 0x164]
push eax
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
lea edx, [esp + 0x244c]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x160]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x24]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x24]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x184]
push eax
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x24b0]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x184]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x24]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x24]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::Find
push eax
lea ecx, [esp + 0x16c]
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x2514]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x168]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x24]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x24]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x17c]
push eax
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x2578]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x17c]
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::Find
add eax, 2
lea ecx, [esp + 0x10]
push eax
push 0
call sub.MFC42.DLL_CString::Delete
lea edx, [esp + 0x24]
lea ecx, [esp + 0x10]
push edx
call sub.MFC42.DLL_CString::Find
add eax, 2
push eax
push 0
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Delete
lea eax, [esp + 0x24]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::Find
lea ecx, [esp + 0x170]
push eax
push ecx
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::Left
mov eax, dword [eax]
or ecx, 0xffffffff
mov edi, eax
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x25dc]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x170]
call sub.MFC42.DLL_CString::CString
mov ecx, 0xf9
xor eax, eax
lea edi, [esp + 0x2641]
mov byte [esp + 0x2640], 0
rep stosd dword es:[edi], eax
mov ebx, dword [sym.imp.MSVCRT.dll_strncpy]
xor edx, edx
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [esp + 0x1c], edx
lea ebp, [esp + 0x273a]
lea esi, [esp + 0x244e]
mov dword [esp + 0x30], 5
lea edi, [esi - 2]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x28
jne 0x409114
push 8
lea ecx, [ebp - 0xfa]
push esi
push ecx
call ebx
lea edx, [esi + 0xe]
push 8
push edx
push ebp
call ebx
lea eax, [esi + 0x1c]
push 8
lea ecx, [ebp + 0xfa]
push eax
push ecx
call ebx
add esp, 0x24
mov edx, 3
lea edi, [esi - 2]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x36
jne 0x409161
push 8
lea edx, [ebp - 0xfa]
push esi
push edx
call ebx
lea eax, [esi + 0xe]
push 8
push eax
push ebp
call ebx
lea ecx, [esi + 0x1c]
push 8
lea edx, [ebp + 0xfa]
push ecx
push edx
call ebx
lea eax, [esi + 0x2a]
push 8
lea ecx, [ebp + 0x1f4]
push eax
push ecx
call ebx
add esp, 0x30
mov edx, 4
mov eax, dword [esp + 0x30]
add esi, 0x64
add ebp, 0x32
dec eax
mov dword [esp + 0x30], eax
jne 0x4090d6
test edx, edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], 0
jle 0x40923f
lea edx, [esp + 0x2640]
mov dword [esp + 0x20], edx
lea ebp, [esp + 0x190]
mov dword [esp + 0x34], 0
mov dword [esp + 0x30], ebp
mov ebx, dword [esp + 0x20]
xor edi, edi
mov esi, ebp
mov eax, ebx
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x4091d6
test cl, cl
je 0x4091d2
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x4091d6
add eax, 2
add esi, 2
test cl, cl
jne 0x4091b2
xor eax, eax
jmp 0x4091db
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4091eb
inc edi
add ebp, 0xa
add ebx, 0x32
cmp edi, 5
jl 0x4091ae
cmp edi, 5
je 0x40920b
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x30]
inc eax
add ebp, 0x32
cmp eax, 0xa
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], ebp
jl 0x4091a8
jmp 0x40921c
mov al, byte [esp + 0x34]
mov ecx, dword [esp + 0x14]
add al, 0x30
mov byte [esp + ecx + 0xbc], al
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
inc eax
add edx, 0xfa
cmp eax, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], edx
jl 0x409195
lea edx, [esp + 0xbc]
lea eax, [esp + 0x88]
push edx
push eax
lea ecx, [esp + 0x38c]
push str._s_r_s
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edx, dword [esp + 0x60]
push 0
push 0
push 0
push edx
lea eax, [esp + 0x74]
push 0x3f3
push eax
call fcn.00403040
mov esi, dword [esp + 0x60]
push 0x20
lea ecx, [esp + 0x80]
lea ebp, [esi + 0x414]
push ebp
push ecx
call fcn.00402fe0
lea edi, [esp + 0x3b8]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esi + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
push edx
lea edx, [esp + 0x3c4]
push edx
call fcn.00402e20
mov eax, dword [esi + 0xc]
add esp, 0x44
cmp eax, 9
jl 0x4092d5
mov dword [esi + 0xc], 1
jmp 0x4092d9
inc eax
mov dword [esi + 0xc], eax
lea eax, [esi + 0x434]
lea ebx, [esi + 0x14]
push eax
mov eax, dword [esi + 0xc]
push ebp
push eax
push str._d_s_s_
push ebx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x7d0
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [esi + 0x8dc]
push ebx
push ecx
call sub.WSOCK32.dll_send
lea ecx, [esp + 0x10]
mov byte [esp + 0x2a30], 0
call sub.MFC42.DLL_CString::CString
jmp 0x409e23
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0x88]
lea edx, [esp + 0x3e8]
rep stosd dword es:[edi], eax
push 0x40eae4
push edx
stosw word es:[edi], ax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40eadc
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ead0
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40eac4
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40eab8
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40eaac
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40eaa4
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ea98
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ea8c
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40ea7c
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ea74
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ea6c
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40ea60
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ea54
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ea48
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40ea40
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ea34
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ea28
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40ea1c
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ea10
push eax
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea ecx, [esp + 0x3e8]
push 0x40ef8c
push ecx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea edx, [esp + 0x3e8]
push 0x40ea04
push edx
call ebp
mov esi, eax
add esp, 8
test esi, esi
jne 0x4095ae
lea eax, [esp + 0x3e8]
push 0x40ef74
push eax
call ebp
add esp, 8
mov esi, eax
push pe_nt_image_headers32
push esi
call dword [sym.imp.MSVCRT.dll_strchr]
push 0x3e
push esi
mov edi, eax
call dword [sym.imp.MSVCRT.dll_strchr]
mov edx, eax
or ecx, 0xffffffff
xor eax, eax
lea esi, [esp + 0x98]
mov byte [edx], 0
mov dword [esp + 0x40], esi
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push str.InPutString
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x44]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x9c]
mov byte [edx], 0x2f
push ecx
call ebp
add esp, 0x18
test eax, eax
jne 0x4096df
lea edx, [esp + 0x88]
push str.sendmsg
push edx
call ebp
add esp, 8
test eax, eax
jne 0x4096df
push eax
push eax
push eax
mov eax, dword [esp + 0x5c]
push eax
lea ecx, [esp + 0x64]
push 0x3f3
push ecx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea edx, [esp + 0x70]
push ebp
push edx
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
lea edx, [ebx + 0x434]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
lea eax, [esp + 0xb4]
push edx
push eax
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x34
cmp eax, 9
jl 0x409691
mov dword [ebx + 0xc], 1
jmp 0x409695
inc eax
mov dword [ebx + 0xc], eax
mov ecx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push ecx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x3e8
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [ebx + 0x8dc]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0
push ecx
push esi
push edx
call sub.WSOCK32.dll_send
jmp 0x409e23
mov eax, dword [str.FSGSFG]
mov cx, word [0x40ea00]
mov dword [esp + 0x24], eax
mov al, byte [0x40f540]
mov word [esp + 0x28], cx
mov byte [esp + 0x384], al
mov ecx, 0x18
xor eax, eax
lea edi, [esp + 0x385]
mov dl, byte [0x40ea02]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov byte [esp + 0x2a], dl
lea ecx, [esp + 0x24]
lea edx, [esp + 0x88]
push ecx
stosb byte es:[edi], al
push edx
lea eax, [esp + 0x38c]
push str._s_r_s
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
mov ecx, dword [esp + 0x60]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x74]
push 0x3f3
push edx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea eax, [esp + 0x80]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0x3b8]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebx + 0x434]
push ecx
lea ecx, [esp + 0x3c0]
push edx
push ecx
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x44
cmp eax, 9
jl 0x4097ac
mov dword [ebx + 0xc], 1
jmp 0x4097b0
inc eax
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x7d0
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x8dc]
not ecx
dec ecx
push ecx
push esi
push eax
call sub.WSOCK32.dll_send
jmp 0x409e23
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0x88]
push 0x40f14c
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x3ec]
push ecx
stosw word es:[edi], ax
call ebp
add esp, 8
test eax, eax
je 0x40982c
push 0x40f14c
jmp 0x4098bb
lea ecx, [esp + 0x3e8]
push 0x40f144
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409849
push 0x40f144
jmp 0x4098bb
lea ecx, [esp + 0x3e8]
push 0x40f13c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409866
push 0x40f13c
jmp 0x4098bb
lea ecx, [esp + 0x3e8]
push 0x40f134
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409883
push 0x40f134
jmp 0x4098bb
lea ecx, [esp + 0x3e8]
push 0x40f12c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4098a0
push 0x40f12c
jmp 0x4098bb
lea ecx, [esp + 0x3e8]
push 0x40f124
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4098e5
push 0x40f124
lea edx, [esp + 0x3ec]
push edx
call ebp
mov esi, eax
push 0x3e
push esi
call dword [sym.imp.MSVCRT.dll_strchr]
add esp, 0x10
mov byte [eax], 0
lea edi, [esi + 1]
lea edx, [esp + 0x88]
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push 0x40f118
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40990c
lea edx, [esp + 0x88]
mov edi, 0x40e9f0
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push 0x40f10c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409933
lea edx, [esp + 0x88]
mov edi, 0x40e9e4
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__huicheng_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40995a
lea edx, [esp + 0x88]
mov edi, str._huicheng
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push 0x40f0f8
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409981
lea edx, [esp + 0x88]
mov edi, 0x40e9d0
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__biqi_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4099a8
lea edx, [esp + 0x88]
mov edi, str._biqi
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__ok_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4099cf
lea edx, [esp + 0x88]
mov edi, 0x40e9c4
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__true_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x4099f6
lea edx, [esp + 0x88]
mov edi, str._true
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__jihuodenglu_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409a1d
lea edx, [esp + 0x88]
mov edi, str._jihuodenglu
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__hysm_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409a44
lea edx, [esp + 0x88]
mov edi, str._hysm
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__zc_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409a6b
lea edx, [esp + 0x88]
mov edi, 0x40e9a0
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__mxl_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409a92
lea edx, [esp + 0x88]
mov edi, str._mxl
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__DelayLabel_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409ab6
lea edx, [esp + 0x88]
mov edi, str._DelayLabel_
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__jiechu_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409ada
lea edx, [esp + 0x88]
mov edi, str._jiechu
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push str.__zcyx_
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409afe
lea edx, [esp + 0x88]
mov edi, str._zcyx
jmp 0x409b20
lea ecx, [esp + 0x3e8]
push 0x40f084
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409b3d
lea edx, [esp + 0x88]
mov edi, 0x40e96c
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x50]
push 0
push 0
push 0
push ecx
lea edx, [esp + 0x64]
push 0x3f3
push edx
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
lea eax, [esp + 0x70]
push ebp
push eax
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
push 0x400
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [ebx + 0x434]
push ecx
lea ecx, [esp + 0xb4]
push edx
push ecx
call fcn.00402e20
mov eax, dword [ebx + 0xc]
add esp, 0x34
cmp eax, 9
jl 0x409ba9
mov dword [ebx + 0xc], 1
jmp 0x409bad
inc eax
mov dword [ebx + 0xc], eax
mov edx, dword [ebx + 0xc]
lea eax, [ebx + 0x434]
push eax
push ebp
lea esi, [ebx + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x14
push 0x3e8
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 0
repne scasb al, byte es:[edi]
mov eax, dword [ebx + 0x8dc]
not ecx
dec ecx
push ecx
push esi
push eax
call sub.WSOCK32.dll_send
jmp 0x409e23
mov ecx, 0xc
xor eax, eax
lea edi, [esp + 0x88]
push 0x40f164
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x3ec]
push ecx
stosw word es:[edi], ax
call ebp
add esp, 8
test eax, eax
je 0x409ca6
lea edx, [esp + 0x3e8]
push 0x40f164
push edx
call ebp
mov ebx, dword [sym.imp.MSVCRT.dll_strchr]
mov esi, eax
push pe_nt_image_headers32
push esi
call ebx
push 0x40f190
push esi
mov edi, eax
call ebp
mov edx, eax
add esp, 0x18
test edx, edx
jne 0x409d2e
push 0x40f18c
push esi
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x3e
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x3c
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x20
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
je 0x409e23
jmp 0x409d2e
lea ecx, [esp + 0x3e8]
push 0x40e95c
push ecx
call ebp
add esp, 8
test eax, eax
je 0x409d58
lea edx, [esp + 0x3e8]
push 0x40e95c
push edx
call ebp
mov ebx, dword [sym.imp.MSVCRT.dll_strchr]
mov esi, eax
push pe_nt_image_headers32
push esi
call ebx
push 0x40f190
push esi
mov edi, eax
call ebp
mov edx, eax
add esp, 0x18
test edx, edx
jne 0x409d2e
push 0x40f18c
push esi
call ebp
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x3e
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x3c
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
jne 0x409d2e
push 0x20
push esi
call ebx
mov edx, eax
add esp, 8
test edx, edx
je 0x409e23
or ecx, 0xffffffff
xor eax, eax
mov byte [edx], 0
lea ebx, [esp + 0x88]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [edx], 0x2f
push 0x7d0
call dword [sym.imp.KERNEL32.DLL_Sleep]
mov ebx, dword [esp + 0x38]
push 0
push 0
push 0
lea esi, [ebx + 0x834]
push 0
push 0xbd6
push esi
call fcn.00403040
lea ebp, [ebx + 0x414]
push 0x20
push ebp
push esi
call fcn.00402fe0
lea edi, [esp + 0xac]
or ecx, 0xffffffff
xor eax, eax
add ebx, 0x434
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0x400
push ecx
lea ecx, [esp + 0xb4]
push ebx
push ecx
call fcn.00402e20
mov edx, dword [esp + 0x6c]
add esp, 0x34
mov eax, dword [edx + 0xc]
cmp eax, 9
jl 0x409dd4
mov eax, edx
mov dword [eax + 0xc], 1
jmp 0x409ddc
mov ecx, dword [esp + 0x38]
inc eax
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x38]
push ebx
push ebp
mov edx, dword [eax + 0xc]
lea esi, [eax + 0x14]
push edx
push str._d_s_s_
push esi
call dword [sym.imp.MSVCRT.dll_sprintf]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x38]
push 0
not ecx
dec ecx
push ecx
mov ecx, dword [eax + 0x8dc]
push esi
push ecx
call sub.WSOCK32.dll_send
push 0x12c
call dword [sym.imp.KERNEL32.DLL_Sleep]
lea ecx, [esp + 0x18]
mov dword [esp + 0x2a30], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x2a28]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x2a24
ret 4