Function at 0x1002a770
Capabilities:
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2f0
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x2b0], 0xfe81
mov dword [ebp - 0x2ac], eax
mov byte [ebp - 9], 0x80
mov dword [ebp - 0x24], 0xd1b3eeda
mov dword [ebp - 0x5c], 0x5c85bd50
movzx ecx, word [0x100a2118]
mov dword [ebp - 0x14], ecx
mov edx, 0x35e0
mov word [ebp - 0x10], dx
xor eax, eax
mov dword [ebp - 0x54], 0xba55
mov dword [ebp - 0x50], eax
mov cx, word [0x100a2118]
mov byte [ebp - 1], cl
movzx edx, byte [str.HeapSize]
mov dword [ebp - 0x1c], edx
xor eax, eax
mov dword [ebp - 0x4c], 0xf06f
mov dword [ebp - 0x48], eax
mov ecx, dword [0x100a20dc]
xor edx, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], edx
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], ecx
movzx edx, word [0x100a20e0]
mov dword [ebp - 0x58], edx
mov eax, 0xfffffccb
mov word [ebp - 8], ax
mov cx, word [0x100a2118]
mov word [ebp - 0x20], cx
mov byte [ebp - 2], 0x97
movzx edx, word [0x100a2124]
mov dword [ebp - 0x18], edx
mov ax, word [0x100a2118]
mov word [ebp - 0x38], ax
mov ecx, dword [0x100a20dc]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], 0xa1115ea
mov dword [ebp - 0x3c], 0x9db3
mov dword [ebp - 0x28], 0xd093
xor edx, edx
mov dword [ebp - 0x44], 0x66d99062
mov dword [ebp - 0x40], edx
mov eax, 0x5df01
mov dword [ebp - 0x2b8], 0x50168120
mov dword [ebp - 0x2b4], eax
mov cx, word [0x100a20d0]
mov word [ebp - 0x148], cx
mov dx, word [0x100a20e4]
mov word [ebp - 0x14c], dx
mov dword [ebp - 0x26c], 0xd237e8a5
mov eax, 0xb871
mov word [ebp - 0x150], ax
mov ecx, 0xdcbb5
mov dword [ebp - 0x2c0], 0x97693df7
mov dword [ebp - 0x2bc], ecx
mov byte [ebp - 0x86], 0x96
mov edx, dword [0x100a20dc]
mov dword [ebp - 0x270], edx
mov eax, dword [0x100a20dc]
mov dword [ebp - 0x274], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x27c], ecx
mov byte [ebp - 0x85], 0x15
mov eax, 0x789af
mov dword [ebp - 0x2c8], 0x1d067db0
mov dword [ebp - 0x2c4], eax
mov ecx, dword [0x100a20d0]
mov edx, dword [0x100a20d4]
mov dword [ebp - 0x2d0], ecx
mov dword [ebp - 0x2cc], edx
mov eax, dword [0x100a20dc]
xor ecx, ecx
mov dword [ebp - 0x2d8], eax
mov dword [ebp - 0x2d4], ecx
mov dword [ebp - 0x280], 0x511bed51
mov edx, dword [0x100a20f8]
mov eax, dword [0x100a20fc]
mov dword [ebp - 0x2e0], edx
mov dword [ebp - 0x2dc], eax
mov ecx, dword [0x100a20e4]
mov dword [ebp - 0x284], ecx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x288], eax
mov word [ebp - 0x154], dx
mov ecx, 0x90
mov word [ebp - 0x158], cx
mov eax, dword [0x100a2104]
cdq
mov dword [ebp - 0x2e8], eax
mov dword [ebp - 0x2e4], edx
movzx eax, byte [str.HeapSize]
cdq
mov dword [ebp - 0x2f0], eax
mov dword [ebp - 0x2ec], edx
mov edx, 0xe825
mov word [ebp - 0x15c], dx
mov dword [ebp - 0x28c], 0xe6
mov dword [ebp - 0x290], 0x7f
mov dword [0x100a20f4], 0x81d5298f
mov byte [str.HeapSize], 0xec
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0x294], ecx
add eax, 0xbbd3
mov byte [ebp - 2], al
mov edx, dword [ebp - 0x54]
add edx, 0x2e
mov eax, dword [ebp - 0x50]
adc eax, 0
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], eax
movzx ecx, word [ebp - 0x10]
mov eax, dword [ebp - 0x24]
add eax, ecx
not eax
add eax, dword [ebp - 0x34]
cdq
mov ecx, dword [0x100a2100]
not ecx
xor esi, esi
mov edi, dword [0x100a2108]
mov ebx, dword [0x100a210c]
not edi
not ebx
xor ecx, edi
xor esi, ebx
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
mov edx, dword [ebp - 0x24]
add edx, 1
cmp dword [0x100a20f4], edx
jne 0x1002abe4
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x160], 0
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
je 0x1002aab0
mov eax, dword [ebp - 0x160]
push eax
mov ecx, dword [ebp - 0x84]
push ecx
call dword [sym.imp.USER32.dll_BeginPaint]
mov dword [ebp - 0x298], eax
mov edx, dword [ebp - 0x164]
push edx
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.USER32.dll_EndPaint]
mov dword [ebp - 0x29c], eax
movzx ecx, word [ebp - 0x38]
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x178], edx
mov dword [ebp - 0x174], eax
cmp dword [ebp - 0x178], 1
jne 0x1002abe4
cmp dword [ebp - 0x174], 0
jne 0x1002abe4
mov dword [ebp - 0x80], 0x19
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
mov eax, 8
imul eax, eax, 0x37a1
mov dword [eax + 0x101e2328], ecx
mov dword [eax + 0x101e232c], edx
mov ecx, dword [ebp - 0x18]
mov dword [0x100a2114], ecx
movzx edx, byte [ebp - 1]
movsx eax, word [0x100a2110]
imul edx, eax
mov word [ebp - 0x20], dx
mov ecx, dword [ebp - 0x1c]
xor edx, edx
push 0xc6e02
push 0x1a00e4b8
push edx
push ecx
call fcn.10073ef0
mov ecx, eax
mov eax, dword [ebp - 0x34]
cdq
sub eax, ecx
mov dword [ebp - 0x34], eax
movsx edx, word [0x100a20f0]
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
xor ecx, ecx
mov dword [0x100a2130], eax
mov dword [0x100a2134], ecx
mov edx, dword [ebp - 0x80]
add edx, 1
mov dword [ebp - 0x80], edx
cmp dword [ebp - 0x80], 0x1a3f
jl 0x1002ab4c
jmp 0x1002abe4
mov dword [0x100a20f4], 0x81d5298f
movzx ecx, byte [ebp - 1]
movsx edx, word [ebp - 8]
imul ecx, edx
movzx eax, byte [ebp - 1]
add eax, ecx
mov byte [ebp - 1], al
movsx ecx, word [0x100a2110]
sar ecx, 6
mov dword [0x100a2100], ecx
mov edx, dword [0x100a20d8]
imul edx, dword [0x100a2128]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov edx, dword [0x100a2108]
mov esi, dword [0x100a210c]
push esi
push edx
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x30], eax
cmp dword [0x100a20dc], 0
jne 0x1002ac54
mov dword [ebp - 0x94], 1
jmp 0x1002ac5e
mov dword [ebp - 0x94], 0
movzx eax, word [ebp - 0x10]
mov ecx, dword [ebp - 0x94]
sub ecx, eax
mov eax, ecx
cdq
xor ecx, ecx
mov esi, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x48]
xor esi, dword [0x100a2100]
xor edi, ecx
sub eax, esi
sbb edx, edi
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], edx
mov edx, dword [ebp - 0x180]
or edx, dword [ebp - 0x17c]
jne 0x1002acaf
xor eax, eax
mov dword [ebp - 0x188], 1
mov dword [ebp - 0x184], eax
jmp 0x1002acba
xorps xmm0, xmm0
movlpd qword [ebp - 0x188], xmm0
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0x2a0], edx
sub ecx, dword [0x100a20f8]
mov eax, dword [ebp - 0x64]
xor eax, 0xfffffa36
and ecx, eax
mov edx, dword [ebp - 0x188]
sub edx, ecx
not edx
mov dword [ebp - 0x34], edx
xor eax, eax
mov dword [0x100a2140], 0xa6
mov dword [0x100a2144], eax
movzx ecx, word [ebp - 0x38]
test ecx, ecx
jne 0x1002ad0e
mov dword [ebp - 0x98], 1
jmp 0x1002ad18
mov dword [ebp - 0x98], 0
movzx edx, byte [0x100a207a]
cmp dword [ebp - 0x98], edx
jl 0x1002ad33
mov dword [ebp - 0x9c], 1
jmp 0x1002ad3d
mov dword [ebp - 0x9c], 0
imul eax, dword [0x100a2104], 0xe31c
cmp dword [ebp - 0x9c], eax
jl 0x1002ad5b
mov dword [ebp - 0xa4], 1
jmp 0x1002ad65
mov dword [ebp - 0xa4], 0
movsx ecx, byte [0x100a2027]
movzx edx, word [ebp - 0x38]
cmp ecx, edx
jle 0x1002ad80
mov dword [ebp - 0xa0], 1
jmp 0x1002ad8a
mov dword [ebp - 0xa0], 0
movsx eax, byte [str.y4The_server_is_requ]
cmp dword [ebp - 0xa0], eax
jl 0x1002ada5
mov dword [ebp - 0xa8], 1
jmp 0x1002adaf
mov dword [ebp - 0xa8], 0
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0xa8]
jge 0x1002ae71
movzx eax, word [ebp - 0x10]
sub eax, 0xc914ffc
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
movzx edx, byte [str.HeapSize]
imul edx, dword [ebp - 0x18]
and edx, dword [ebp - 0x18]
mov dword [ebp - 0x18], edx
push 0
push 0x1c3d6a01
mov eax, dword [0x100a20fc]
push eax
mov ecx, dword [0x100a20f8]
push ecx
call fcn.10073ef0
mov ecx, dword [ebp - 0x1c]
xor esi, esi
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x1c], eax
mov edx, dword [0x100a2140]
or edx, dword [0x100a2144]
je 0x1002ae2d
movzx eax, byte [ebp - 9]
cdq
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], edx
jmp 0x1002ae3f
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x28], edx
movzx eax, byte [ebp - 2]
imul ecx, eax, 0x97ef
mov byte [ebp - 2], cl
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x2a4], eax
sub edx, 0x6a
mov byte [ebp - 2], dl
jmp 0x1002b041
movsx ecx, word [0x100a20f0]
movzx edx, word [0x100a2124]
cmp ecx, edx
jge 0x1002aed7
mov eax, dword [ebp - 0x28]
sub eax, 0x3a1b8fd5
mov word [0x100a20f0], ax
mov byte [str.HeapSize], 4
movzx ecx, word [0x100a2124]
mov dword [ebp - 0x18], ecx
mov edx, dword [0x100a2100]
add edx, 0x9ba5
mov word [0x100a20f0], dx
mov dword [0x100a2128], 0xb
movsx eax, word [0x100a20c8]
movzx ecx, word [ebp - 0x10]
xor eax, ecx
mov word [0x100a20c8], ax
jmp 0x1002b041
cmp dword [0x100a20e4], 0
jne 0x1002af52
mov edx, dword [ebp - 0x64]
not edx
mov eax, dword [ebp - 0x60]
not eax
xor ecx, ecx
add edx, dword [0x100a2100]
adc eax, ecx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x48]
add edx, 0x99fce6ed
adc eax, 0x2844d
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
sub ecx, edx
sbb esi, eax
mov dword [0x100a2150], ecx
mov dword [0x100a2154], esi
imul edx, dword [ebp - 0x3c], 0xb1
mov dword [ebp - 0x18], edx
movsx eax, word [0x100a20c8]
cdq
push 0x419ad
push 0x7ed3a262
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x30], eax
jmp 0x1002b041
cmp dword [ebp - 0x1c], 0
jne 0x1002b041
movsx eax, word [0x100a20f0]
and eax, dword [ebp - 0x34]
movsx ecx, word [0x100a20f0]
sub ecx, eax
mov word [0x100a20f0], cx
mov edx, dword [0x100a20dc]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x2a8], ecx
sub edx, eax
mov eax, dword [0x100a20dc]
add eax, edx
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x6c]
or ecx, dword [ebp - 0x68]
jne 0x1002afb2
xor edx, edx
mov dword [ebp - 0x12c], 1
mov dword [ebp - 0x128], edx
jmp 0x1002afbd
xorps xmm0, xmm0
movlpd qword [ebp - 0x12c], xmm0
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], ecx
mov edx, dword [ebp - 0x190]
or edx, dword [ebp - 0x18c]
jne 0x1002afe9
mov dword [ebp - 0xac], 1
jmp 0x1002aff3
mov dword [ebp - 0xac], 0
movzx eax, byte [ebp - 2]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
or ecx, dword [ebp - 0x12c]
or esi, dword [ebp - 0x128]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, eax
movsx eax, word [0x100a20f0]
not eax
movzx edx, word [0x100a211c]
and eax, edx
mov edx, dword [0x100a2104]
add edx, dword [ebp - 0xac]
sub eax, edx
cdq
sub ecx, eax
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x70], 0
jmp 0x1002b053
mov eax, dword [ebp - 0x70]
add eax, 1
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x70]
cmp ecx, dword [ebp + 0x14]
jae 0x1002c607
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx edx, ax
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], 0
je 0x1002b07d
mov dword [ebp - 0xb0], 1
jmp 0x1002b087
mov dword [ebp - 0xb0], 0
cmp dword [ebp - 0x1c], 0x15
je 0x1002b099
mov dword [ebp - 0xb4], 1
jmp 0x1002b0a3
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb0]
cmp eax, dword [ebp - 0xb4]
jne 0x1002b2c2
movsx ecx, word [ebp - 8]
test ecx, ecx
je 0x1002b100
movsx edx, byte [str.y4The_server_is_requ]
add edx, 0xe1a
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x34]
cdq
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x34], eax
mov edx, dword [0x100a20f8]
add edx, 0xa04af7db
mov dword [0x100a20dc], edx
jmp 0x1002b2c2
mov eax, 0xc
test eax, eax
je 0x1002b1c6
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0x258], edx
sub ecx, 0xa7
mov dword [ebp - 0x28], ecx
mov eax, dword [0x100a20f4]
add eax, 1
mov dword [0x100a20f4], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x24]
mov dword [0x100a2104], ecx
movzx edx, byte [str.HeapSize]
add edx, 0x2ac52686
mov byte [ebp - 2], dl
movzx eax, byte [ebp - 9]
not eax
sub eax, dword [ebp - 0x3c]
jne 0x1002b168
mov dword [ebp - 0xb8], 1
jmp 0x1002b172
mov dword [ebp - 0xb8], 0
movzx ecx, word [0x100a2118]
imul ecx, dword [ebp - 0x5c]
movzx edx, word [0x100a20e0]
imul ecx, edx
not ecx
imul ecx, dword [ebp - 0xb8]
xor eax, eax
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], eax
movzx ecx, byte [str.HeapSize]
sub ecx, dword [0x100a20e4]
xor edx, edx
mov eax, dword [0x100a20f8]
sub eax, ecx
mov ecx, dword [0x100a20fc]
sbb ecx, edx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
jmp 0x1002b2c2
movsx edx, word [ebp - 8]
movzx eax, word [ebp - 0x20]
cmp edx, eax
jg 0x1002b27c
movzx ecx, byte [str.HeapSize]
add ecx, 0x810
mov word [ebp - 0x10], cx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
add edx, dword [ebp - 0x64]
adc eax, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x44]
mov esi, dword [ebp - 0x40]
sub ecx, edx
sbb esi, eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], esi
mov edx, dword [ebp - 0x6c]
sub edx, 0x5e05
mov word [0x100a2118], dx
movzx eax, word [ebp - 0x10]
test eax, eax
je 0x1002b22f
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x118], edx
jmp 0x1002b240
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], ecx
mov edx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x118]
mov dword [0x100a2140], edx
mov dword [0x100a2144], eax
mov ecx, dword [ebp - 0x5c]
sub ecx, 0x1d4e
mov byte [ebp - 1], cl
movsx edx, word [ebp - 8]
movsx eax, byte [str.y4The_server_is_requ]
sub edx, eax
movsx ecx, word [ebp - 8]
sub ecx, edx
mov word [ebp - 8], cx
jmp 0x1002b2c2
movzx edx, byte [ebp - 1]
test edx, edx
je 0x1002b2c2
mov eax, dword [ebp - 0x24]
sub eax, dword [0x100a2120]
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], eax
imul ecx, dword [ebp - 0x3c], 0xae29
mov word [0x100a2118], cx
mov edx, dword [0x100a20d8]
add edx, 0x25
movzx eax, byte [ebp - 1]
sub eax, edx
mov byte [ebp - 1], al
movzx ecx, word [ebp - 0x10]
imul ecx, dword [0x100a20d8]
mov word [ebp - 0x10], cx
movzx eax, word [0x100a20e0]
cdq
add eax, 0x3863e3ca
adc edx, 0xaaefa
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x194], edx
mov edx, dword [ebp - 0x198]
or edx, dword [ebp - 0x194]
je 0x1002b40c
movzx eax, word [ebp - 0x10]
movsx ecx, word [ebp - 8]
xor eax, ecx
je 0x1002b31a
movzx edx, word [0x100a211c]
movzx eax, byte [ebp - 9]
cmp edx, eax
jl 0x1002b31a
mov dword [ebp - 0xbc], 1
jmp 0x1002b324
mov dword [ebp - 0xbc], 0
mov ecx, dword [ebp - 0xbc]
not ecx
test ecx, ecx
je 0x1002b40c
cmp dword [ebp - 0x3c], 0
jne 0x1002b380
movzx edx, word [0x100a2124]
test edx, edx
jne 0x1002b359
xor eax, eax
mov dword [ebp - 0x134], 1
mov dword [ebp - 0x130], eax
jmp 0x1002b364
xorps xmm0, xmm0
movlpd qword [ebp - 0x134], xmm0
cmp dword [ebp - 0x134], 0x2a9c68f5
jne 0x1002b380
cmp dword [ebp - 0x130], 0xa11bd
je 0x1002b407
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor ecx, ecx
mov dword [0x100a2150], eax
mov dword [0x100a2154], ecx
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x1a0]
or ecx, dword [ebp - 0x19c]
je 0x1002b407
movsx eax, word [0x100a20c8]
cdq
mov ecx, eax
mov esi, edx
sub ecx, 0xa19f356b
sbb esi, 0x42626
movsx eax, byte [0x100a203b]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [0x100a203b], al
mov edx, dword [ebp - 0x24]
add edx, dword [0x100a20dc]
mov dword [0x100a20dc], edx
movzx eax, word [0x100a2118]
add eax, 0x6bb34cfb
mov word [0x100a20c8], ax
jmp 0x1002b523
movsx ecx, word [0x100a20c8]
test ecx, ecx
je 0x1002b471
movzx edx, byte [ebp - 1]
test edx, edx
je 0x1002b438
mov eax, dword [0x100a20f8]
mov ecx, dword [0x100a20fc]
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], ecx
jmp 0x1002b44c
movzx eax, word [0x100a2124]
cdq
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], edx
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0x1c], edx
mov eax, dword [0x100a2140]
mov edx, dword [0x100a2144]
mov cl, 5
call fcn.10073f30
mov byte [0x100a207a], al
jmp 0x1002b523
cmp dword [0x100a2128], 0
jne 0x1002b523
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], ecx
mov edx, dword [ebp - 0x1a8]
or edx, dword [ebp - 0x1a4]
jne 0x1002b523
cmp dword [ebp - 0x30], 0
je 0x1002b4b5
mov eax, dword [0x100a20e4]
mov dword [ebp - 0xc0], eax
jmp 0x1002b4c2
movzx ecx, byte [0x100a207a]
mov dword [ebp - 0xc0], ecx
mov edx, dword [ebp - 0xc0]
mov dword [ebp - 0x3c], edx
movsx eax, byte [0x100a2027]
movzx ecx, byte [ebp - 2]
not ecx
add eax, ecx
mov dword [ebp - 0x3c], eax
mov edx, 0xf1a31c3b
sub edx, dword [0x100a2100]
movzx eax, word [ebp - 0x10]
add eax, dword [ebp - 0x24]
add edx, eax
mov dword [0x100a2100], edx
mov eax, dword [ebp - 0x14]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x14], eax
movzx eax, word [0x100a20e0]
cdq
sub eax, 0x51be7f1d
mov dword [ebp - 0x3c], eax
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x78], edx
cmp dword [0x100a20dc], 0
jne 0x1002b541
mov dword [ebp - 0xc4], 1
jmp 0x1002b54b
mov dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xc4]
imul eax, dword [0x100a20d8]
mov byte [str.y4The_server_is_requ], al
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x40]
add ecx, 0x31e7be74
adc edx, 0xd10d4
mov eax, dword [0x100a2150]
mov esi, dword [0x100a2154]
and eax, ecx
and esi, edx
mov dword [0x100a2150], eax
mov dword [0x100a2154], esi
mov byte [0x100a2027], 0x14
movzx ecx, word [0x100a20e0]
add ecx, 0x5d45bd28
jne 0x1002b5ab
mov dword [ebp - 0xc8], 1
jmp 0x1002b5b5
mov dword [ebp - 0xc8], 0
mov eax, dword [ebp - 0x58]
cdq
sub eax, 0xeb42e97a
or eax, 0xe3
movsx edx, word [ebp - 8]
add edx, dword [0x100a20d8]
mov ecx, dword [ebp - 0xc8]
sub ecx, edx
sub eax, ecx
mov byte [str.HeapSize], al
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x78]
add eax, 0x44b
mov dword [ebp - 0x16c], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x1b0], ecx
mov dword [ebp - 0x1ac], edx
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x1ac]
jg 0x1002b961
jl 0x1002b62b
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x1b0]
jae 0x1002b961
mov eax, dword [ebp - 0x14]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1c0], ecx
mov dword [ebp - 0x1bc], esi
mov edx, dword [ebp - 0x1b4]
cmp edx, dword [ebp - 0x1bc]
ja 0x1002b67d
jb 0x1002b671
mov eax, dword [ebp - 0x1b8]
cmp eax, dword [ebp - 0x1c0]
ja 0x1002b67d
mov dword [ebp - 0xcc], 1
jmp 0x1002b687
mov dword [ebp - 0xcc], 0
cmp dword [ebp - 0x14], 0x3d
jg 0x1002b699
mov dword [ebp - 0xd0], 1
jmp 0x1002b6a3
mov dword [ebp - 0xd0], 0
mov ecx, dword [ebp - 0xcc]
cmp ecx, dword [ebp - 0xd0]
jne 0x1002b95f
mov edx, dword [0x100a2140]
or edx, dword [0x100a2144]
jne 0x1002b6d5
cmp dword [ebp - 0x30], 0
je 0x1002b6d5
mov dword [ebp - 0xd4], 1
jmp 0x1002b6df
mov dword [ebp - 0xd4], 0
movzx eax, word [0x100a20e0]
cmp dword [ebp - 0xd4], eax
jg 0x1002b87b
mov ecx, 2
mov word [ebp - 0x10], cx
movsx eax, word [ebp - 8]
cdq
add eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x24]
imul edx, dword [ebp - 0x30]
sub eax, edx
mov byte [ebp - 2], al
mov eax, dword [0x100a2104]
sub eax, 0x50266cc1
mov dword [ebp - 0x58], eax
movzx ecx, word [ebp - 0x10]
mov dword [ebp - 0x7c], ecx
cmp dword [ebp - 0x7c], 0
je 0x1002b73e
cmp dword [ebp - 0x7c], 1
je 0x1002b786
cmp dword [ebp - 0x7c], 2
je 0x1002b7e7
jmp 0x1002b876
movzx edx, byte [ebp - 2]
imul eax, edx, 0x59debe17
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0x58], eax
movsx ecx, word [ebp - 8]
movzx edx, word [0x100a20e0]
add ecx, edx
movsx eax, word [ebp - 8]
imul eax, ecx
mov word [ebp - 8], ax
movzx eax, byte [ebp - 1]
cdq
add eax, 0x2a428f57
mov byte [ebp - 9], al
jmp 0x1002b876
movzx ecx, byte [ebp - 9]
imul eax, ecx, 0x9cd3
cdq
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
movzx edx, byte [ebp - 9]
imul eax, edx, 0xf9
mov dword [0x100a20d8], eax
movzx ecx, word [0x100a211c]
xor ecx, dword [0x100a2120]
mov word [0x100a2138], cx
mov dl, byte [0x100a2c3c]
mov byte [ebp - 2], dl
mov eax, dword [0x100a2120]
cdq
mov ecx, 8
shl ecx, 0
mov dword [ecx + 0x1016eb08], eax
mov dword [ecx + 0x1016eb0c], edx
jmp 0x1002b876
movzx edx, word [0x100a211c]
add edx, 0x26
mov dword [ebp - 0x58], edx
movsx eax, word [0x100a2110]
imul eax, eax, 0xe97ec16
cdq
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x40], edx
movzx ecx, word [ebp - 0x20]
movsx edx, word [0x100a20f0]
sub ecx, edx
jne 0x1002b823
mov dword [ebp - 0xd8], 1
jmp 0x1002b82d
mov dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0x28]
add eax, dword [0x100a20dc]
movzx ecx, word [0x100a2138]
add eax, ecx
movzx edx, byte [0x100a207a]
not edx
xor edx, dword [ebp - 0xd8]
imul eax, edx
test eax, eax
jne 0x1002b861
mov dword [ebp - 0xdc], 1
jmp 0x1002b86b
mov dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0xdc]
mov dword [0x100a2128], eax
jmp 0x1002b95f
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x1c8], ecx
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1c8]
or eax, dword [ebp - 0x1c4]
je 0x1002b8ff
mov ecx, dword [ebp - 0x64]
sub ecx, 0xcf
mov dword [ebp - 0x18], ecx
movzx edx, word [0x100a211c]
and edx, 0xc2
mov word [0x100a20f0], dx
movzx eax, word [0x100a2124]
cdq
add eax, 0xd5bfa8a2
adc edx, 0x386b4
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
movzx eax, byte [0x100a207b]
cdq
add eax, 0x6512a991
mov ecx, dword [0x100a20e4]
add ecx, eax
mov dword [0x100a20e4], ecx
mov edx, 2
mov word [ebp - 8], dx
jmp 0x1002b95f
mov eax, dword [0x100a2140]
or eax, dword [0x100a2144]
je 0x1002b95f
movzx ecx, word [0x100a211c]
mov edx, dword [ebp - 0x14]
and edx, ecx
mov eax, dword [ebp - 0x14]
sub eax, edx
mov dword [ebp - 0x14], eax
movzx eax, word [ebp - 0x20]
cdq
add eax, 0xb1cc66e6
mov ecx, dword [0x100a20dc]
add ecx, eax
mov dword [0x100a20dc], ecx
mov edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x48]
add edx, 1
adc eax, 0
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x54]
sub edx, 0x513441a
mov dword [ebp - 0x3c], edx
jmp 0x1002b9c2
movzx eax, byte [ebp - 1]
cdq
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1cc], edx
mov eax, dword [ebp - 0x1cc]
cmp eax, dword [ebp - 0x50]
jg 0x1002b9c2
jl 0x1002b98a
mov ecx, dword [ebp - 0x1d0]
cmp ecx, dword [ebp - 0x54]
ja 0x1002b9c2
mov eax, dword [ebp - 0x58]
cdq
add eax, 0x6375d7bb
mov byte [0x100a207a], al
mov edx, dword [ebp - 0x5c]
add edx, 0xfd
mov eax, dword [ebp - 0x14]
imul eax, edx
mov dword [ebp - 0x14], eax
mov cl, byte [0x100a2c3c]
mov byte [0x100a203b], cl
xor edx, edx
mov dword [ebp - 0x54], 0x94da
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x78]
add eax, 0x2f7
mov dword [ebp - 0xf0], eax
movsx ecx, word [ebp - 8]
add ecx, dword [0x100a20e4]
movsx edx, word [ebp - 8]
imul edx, ecx
mov word [ebp - 8], dx
movsx eax, word [0x100a20f0]
add eax, 0x6a07767d
xor ecx, ecx
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x54]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x78]
add eax, 0x5f2
mov dword [ebp - 0x168], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
not ecx
not edx
mov dword [ebp - 0x1d8], ecx
mov dword [ebp - 0x1d4], edx
mov eax, dword [ebp - 0x1d8]
or eax, dword [ebp - 0x1d4]
je 0x1002ba6c
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x1e0], ecx
mov dword [ebp - 0x1dc], edx
mov eax, dword [ebp - 0x1e0]
or eax, dword [ebp - 0x1dc]
je 0x1002ba6c
mov dword [ebp - 0xe0], 1
jmp 0x1002ba76
mov dword [ebp - 0xe0], 0
movzx ecx, byte [ebp - 9]
movzx edx, word [0x100a211c]
sub ecx, edx
not ecx
cmp dword [ebp - 0xe0], ecx
jle 0x1002bb3a
movzx eax, word [0x100a2124]
movzx ecx, byte [ebp - 2]
sub eax, ecx
cdq
mov ecx, eax
add ecx, 0xa5dabf04
movzx eax, byte [0x100a207a]
cdq
mov esi, eax
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0x25c], eax
not edx
sub esi, edx
mov eax, dword [ebp - 0x28]
cdq
add esi, eax
add ecx, esi
mov word [0x100a20e0], cx
movzx eax, word [ebp - 0x38]
cdq
mov ecx, eax
mov eax, dword [ebp - 0x58]
cdq
mov edx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
mov dword [ebp - 0x260], esi
not edx
sub eax, edx
not eax
mov edx, dword [0x100a20f4]
add edx, dword [0x100a20dc]
sub eax, edx
add ecx, eax
mov word [0x100a20e0], cx
mov eax, dword [ebp - 0x28]
sub eax, dword [0x100a20d8]
mov ecx, dword [ebp - 0x28]
add ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x28]
mov eax, 2
imul ecx, eax, 0x3907
mov word [ecx + 0x100eea78], dx
jmp 0x1002bc50
mov eax, dword [ebp - 0x24]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
xor ecx, dword [0x100a20f8]
xor esi, dword [0x100a20fc]
add eax, ecx
adc edx, esi
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1e4], edx
mov edx, dword [ebp - 0x1e8]
or edx, dword [ebp - 0x1e4]
jne 0x1002bb7a
mov byte [ebp - 0x29], 1
jmp 0x1002bb7e
mov byte [ebp - 0x29], 0
mov al, byte [ebp - 0x29]
mov byte [0x100a2027], al
movzx eax, word [ebp - 0x10]
sar eax, 5
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
cmp dword [0x100a20dc], 0
jne 0x1002bbae
mov dword [ebp - 0x108], 1
jmp 0x1002bbb8
mov dword [ebp - 0x108], 0
cmp dword [ebp - 0x34], 0
jne 0x1002bbca
mov dword [ebp - 0xe8], 1
jmp 0x1002bbd4
mov dword [ebp - 0xe8], 0
movzx eax, byte [ebp - 2]
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a2118]
cdq
mov edi, dword [0x100a20e8]
mov ebx, dword [0x100a20ec]
and edi, eax
and ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x1ec], edx
mov edx, dword [ebp - 0x1f0]
or edx, dword [ebp - 0x1ec]
jne 0x1002bc24
mov dword [ebp - 0xec], 1
jmp 0x1002bc2e
mov dword [ebp - 0xec], 0
mov eax, dword [0x100a2120]
add eax, dword [ebp - 0x108]
movsx ecx, word [ebp - 8]
imul ecx, dword [ebp - 0xe8]
sub eax, ecx
imul eax, dword [ebp - 0xec]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0xf0]
or edx, dword [ebp - 0x168]
mov eax, dword [ebp - 0x16c]
sub eax, dword [ebp - 0xf0]
cmp edx, eax
je 0x1002c602
mov eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x50]
mov cl, 2
call fcn.10073f30
mov dword [ebp - 0x34], eax
movsx eax, byte [0x100a2027]
cdq
add eax, 0x7e11ac18
mov word [0x100a211c], ax
mov ecx, dword [ebp - 0x5c]
sub ecx, 0x9ad1fc3e
mov word [0x100a2118], cx
mov dword [ebp - 0x74], 0
jmp 0x1002bcb5
mov edx, dword [ebp - 0x74]
add edx, 1
mov dword [ebp - 0x74], edx
cmp dword [ebp - 0x74], 0x4c
jge 0x1002bcc6
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
jmp 0x1002bcac
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x8c], ecx
mov edx, dword [ebp - 0x8c]
add edx, 0x557
mov dword [ebp - 0xfc], edx
mov dword [ebp - 0x18], 0x23195a11
push 0
push 0xc3ac
mov eax, dword [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x64]
push ecx
call fcn.10073ef0
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
movzx edx, word [0x100a211c]
sub edx, 0x802b
mov word [ebp - 8], dx
movsx eax, word [ebp - 8]
sub eax, 0x545b
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
movzx eax, word [ebp - 0x20]
cdq
push 0xa23d2
push 0x4a8a1daa
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x8c]
add eax, 0x5c0
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x8c]
add ecx, 0x371
mov dword [ebp - 0x170], ecx
xor edx, edx
mov dword [0x100a2148], 0xfc9b0b9c
mov dword [0x100a214c], edx
movzx eax, word [0x100a20e0]
sub eax, dword [ebp - 0x14]
movzx ecx, word [0x100a20e0]
sub ecx, eax
mov word [0x100a20e0], cx
mov eax, dword [ebp - 0x24]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x24], eax
movsx edx, byte [str.y4The_server_is_requ]
movzx eax, word [0x100a20e0]
imul edx, eax
movsx ecx, byte [str.y4The_server_is_requ]
add ecx, edx
mov byte [str.y4The_server_is_requ], cl
mov edx, 0x61aa
mov word [0x100a2124], dx
movsx eax, word [0x100a20f0]
xor eax, 0x9bab06c7
mov word [0x100a2110], ax
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
push 0
push 0x7a
push edx
push ecx
call fcn.10073ef0
mov ecx, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x48]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], edx
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov ecx, dword [ebp - 0x14]
sub ecx, 0x364f464
xor esi, esi
mov dword [ebp - 0x1f8], edx
mov dword [ebp - 0x1f4], eax
mov dword [ebp - 0x200], ecx
mov dword [ebp - 0x1fc], esi
mov edx, dword [ebp - 0x1f8]
cmp edx, dword [ebp - 0x200]
jne 0x1002bf9c
mov eax, dword [ebp - 0x1f4]
cmp eax, dword [ebp - 0x1fc]
jne 0x1002bf9c
mov eax, dword [0x100a2120]
cdq
mov ecx, dword [ebp - 0x5c]
xor esi, esi
add ecx, 0x9764794
adc esi, 0xee87f
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x204], edx
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x20c], esi
mov edx, dword [ebp - 0x208]
cmp edx, dword [ebp - 0x210]
jne 0x1002bf9c
mov eax, dword [ebp - 0x204]
cmp eax, dword [ebp - 0x20c]
jne 0x1002bf9c
movzx ecx, byte [0x100a207b]
test ecx, ecx
je 0x1002bf58
mov edx, dword [ebp - 0x30]
xor eax, eax
mov dword [ebp - 0x218], edx
mov dword [ebp - 0x214], eax
mov ecx, dword [0x100a20d4]
cmp ecx, dword [ebp - 0x214]
jg 0x1002bf08
jl 0x1002befc
mov edx, dword [0x100a20d0]
cmp edx, dword [ebp - 0x218]
jae 0x1002bf08
mov dword [ebp - 0xf4], 1
jmp 0x1002bf12
mov dword [ebp - 0xf4], 0
cmp dword [0x100a20d4], 0
jg 0x1002bf32
jl 0x1002bf26
cmp dword [0x100a20d0], 0x36
jae 0x1002bf32
mov dword [ebp - 0xf8], 1
jmp 0x1002bf3c
mov dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0xf4]
cmp eax, dword [ebp - 0xf8]
je 0x1002bf58
mov ecx, dword [ebp - 0x14]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [ebp - 8], ax
jmp 0x1002bf9c
xor eax, eax
mov dword [0x100a2148], 0xfc9b0b9c
mov dword [0x100a214c], eax
imul ecx, dword [ebp - 0x34], 0xa886abc7
xor edx, edx
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
push 0
push 0xb6c8
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x1c], eax
mov edx, dword [str.A_suspending_event]
mov dword [ebp - 0x254], edx
mov eax, dword [0x100865d4]
mov dword [ebp - 0x250], eax
mov ecx, dword [0x100865d8]
mov dword [ebp - 0x24c], ecx
mov edx, dword [0x100865dc]
mov dword [ebp - 0x248], edx
mov ax, word [0x100865e0]
mov word [ebp - 0x244], ax
mov cl, byte [0x100865e2]
mov byte [ebp - 0x242], cl
lea edx, [ebp - 0x254]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cdq
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0xfc]
add eax, 0x273
mov ecx, dword [ebp - 0x170]
add ecx, 0x1f9
sub eax, ecx
cmp eax, dword [ebp - 0xfc]
je 0x1002c602
movzx eax, word [0x100a2118]
cdq
mov ecx, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x48]
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], edx
mov dword [ebp - 0x228], ecx
mov dword [ebp - 0x224], esi
mov edx, dword [ebp - 0x21c]
cmp edx, dword [ebp - 0x224]
jg 0x1002c12f
jl 0x1002c0a0
mov eax, dword [ebp - 0x220]
cmp eax, dword [ebp - 0x228]
jae 0x1002c12f
movsx ecx, word [ebp - 8]
xor ecx, 0xd2e7f720
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
movzx edx, word [ebp - 0x10]
movzx eax, byte [str.HeapSize]
movsx ecx, word [ebp - 8]
imul eax, ecx
imul eax, eax, 0xe8f3e518
imul edx, eax
test edx, edx
jne 0x1002c0eb
mov byte [ebp - 0x2a], 1
jmp 0x1002c0ef
mov byte [ebp - 0x2a], 0
mov cl, byte [ebp - 0x2a]
mov byte [0x100a203b], cl
movsx edx, word [0x100a20f0]
imul eax, edx, 0x52
mov word [0x100a2118], ax
imul ecx, dword [0x100a2114], 0xcf
mov dword [0x100a20dc], ecx
movsx edx, word [0x100a2110]
mov eax, dword [ebp - 0x18]
sub eax, edx
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
jmp 0x1002c1d5
movsx ecx, byte [0x100a203b]
movzx edx, byte [ebp - 2]
not edx
cmp ecx, edx
jg 0x1002c1d5
cmp dword [ebp - 0x14], 0
jne 0x1002c156
mov dword [ebp - 0x100], 1
jmp 0x1002c160
mov dword [ebp - 0x100], 0
movsx eax, word [ebp - 8]
movsx ecx, byte [0x100a2027]
movsx edx, word [0x100a2110]
sub ecx, edx
add eax, ecx
not eax
cdq
mov ecx, eax
mov esi, edx
movzx eax, word [0x100a211c]
cdq
mov edi, eax
mov ebx, edx
sub edi, dword [0x100a20f8]
sbb ebx, dword [0x100a20fc]
not edi
not ebx
mov eax, dword [0x100a20f4]
xor eax, dword [ebp - 0x100]
cdq
and edi, eax
and ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073ef0
mov byte [0x100a207a], al
mov edx, dword [ebp - 0x64]
sub edx, 0x4c55b9ca
mov word [0x100a2110], dx
mov eax, dword [0x100a2104]
sub eax, 0x6635ed90
mov word [ebp - 8], ax
mov byte [str.y4The_server_is_requ], 0x4f
mov ecx, dword [0x100a2114]
not ecx
movzx edx, byte [ebp - 1]
cmp ecx, edx
jge 0x1002c1f8
mov dword [ebp - 0xe4], 1
jmp 0x1002c202
mov dword [ebp - 0xe4], 0
cmp dword [ebp - 0x3c], 0xe10f
jae 0x1002c217
mov dword [ebp - 0x104], 1
jmp 0x1002c221
mov dword [ebp - 0x104], 0
mov eax, dword [ebp - 0xe4]
cmp eax, dword [ebp - 0x104]
jge 0x1002c392
call dword [sym.imp.USER32.dll_GetFocus]
xor ecx, ecx
mov dword [0x100a2130], eax
mov dword [0x100a2134], ecx
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
mov dword [ebp - 0x230], edx
mov dword [ebp - 0x22c], eax
mov ecx, dword [ebp - 0x230]
or ecx, dword [ebp - 0x22c]
je 0x1002c311
mov dword [0x100a20dc], 0x444fa5ef
movzx edx, byte [ebp - 1]
mov eax, dword [ebp - 0x3c]
sub eax, edx
jne 0x1002c290
mov dword [ebp - 0x10c], 1
jmp 0x1002c29a
mov dword [ebp - 0x10c], 0
movzx ecx, byte [ebp - 1]
add ecx, dword [0x100a20d8]
add ecx, dword [ebp - 0x10c]
movzx edx, word [0x100a211c]
mov eax, dword [ebp - 0x30]
sub eax, edx
not eax
mov edx, dword [ebp - 0x24]
not edx
sub eax, edx
add ecx, eax
xor eax, eax
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], eax
movzx ecx, word [0x100a2118]
movzx edx, byte [0x100a207a]
xor ecx, edx
jne 0x1002c2ec
mov dword [ebp - 0x110], 1
jmp 0x1002c2f6
mov dword [ebp - 0x110], 0
movzx eax, word [0x100a211c]
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x110]
sub ecx, eax
mov word [0x100a20e0], cx
jmp 0x1002c390
cmp dword [0x100a2114], 0
je 0x1002c390
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x48], eax
movsx ecx, byte [str.y4The_server_is_requ]
movzx edx, byte [0x100a207a]
imul ecx, edx
mov al, byte [str.y4The_server_is_requ]
sar al, cl
mov byte [str.y4The_server_is_requ], al
mov dword [0x100a2100], 0xc9bf
movzx ecx, word [ebp - 0x10]
mov edx, dword [ebp - 0x28]
imul edx, ecx
mov eax, dword [ebp - 0x28]
sub eax, edx
mov dword [ebp - 0x28], eax
mov dword [0x100a2114], 8
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
push 0
push 0x6e1b
push edx
push ecx
call fcn.10073ef0
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
jmp 0x1002c3e4
movzx eax, byte [0x100a207a]
test eax, eax
je 0x1002c3e4
movzx ecx, word [ebp - 0x38]
imul ecx, ecx, 0xd4
mov edx, dword [0x100a2104]
shl edx, cl
mov dword [0x100a2104], edx
movsx eax, byte [0x100a203b]
sub eax, 0x5b
mov word [0x100a211c], ax
push 0
push 0xd3db16a4
mov ecx, dword [0x100a20fc]
push ecx
mov edx, dword [0x100a20f8]
push edx
call fcn.10073ef0
mov dword [0x100a20e4], eax
movzx eax, word [0x100a20e0]
mov ecx, dword [ebp - 0x14]
add ecx, 0x79
cmp eax, ecx
jne 0x1002c59e
movzx edx, byte [ebp - 9]
add edx, dword [0x100a2128]
cmp edx, 1
jne 0x1002c59e
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], ecx
mov edx, dword [ebp - 0x238]
or edx, dword [ebp - 0x234]
je 0x1002c43f
push 0x100865e4
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x18], eax
jmp 0x1002c56d
movzx eax, byte [ebp - 1]
test eax, eax
jne 0x1002c453
mov dword [ebp - 0x114], 1
jmp 0x1002c45d
mov dword [ebp - 0x114], 0
cmp dword [ebp - 0x114], 0
jle 0x1002c56d
movsx ecx, word [ebp - 8]
test ecx, ecx
jne 0x1002c486
xor edx, edx
mov dword [ebp - 0x144], 1
mov dword [ebp - 0x140], edx
jmp 0x1002c491
xorps xmm0, xmm0
movlpd qword [ebp - 0x144], xmm0
movzx eax, byte [ebp - 9]
mov ecx, dword [ebp - 0x24]
xor ecx, 0x7f65582a
and eax, ecx
cdq
mov esi, eax
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
push eax
push edx
mov ecx, dword [ebp - 0x140]
push ecx
mov edx, dword [ebp - 0x144]
push edx
call fcn.10073ef0
mov ecx, eax
movsx eax, word [ebp - 8]
cdq
or ecx, eax
add esi, ecx
mov word [0x100a2124], si
mov edx, dword [ebp - 0x5c]
xor eax, eax
push 0x6e1ab
push 0x7950bfcd
push eax
push edx
call fcn.10073ef0
mov byte [ebp - 2], al
mov ecx, dword [0x100a2100]
sub ecx, dword [0x100a2120]
mov dword [0x100a2100], ecx
mov eax, dword [ebp - 0x14]
not eax
cdq
mov esi, eax
mov edi, edx
movzx eax, word [0x100a2138]
cdq
mov ecx, dword [0x100a2148]
mov ebx, dword [0x100a214c]
push ebx
push ecx
push edx
push eax
call fcn.10073ef0
sub esi, eax
sbb edi, edx
mov dword [ebp - 0x240], esi
mov dword [ebp - 0x23c], edi
mov edx, dword [ebp - 0x240]
or edx, dword [ebp - 0x23c]
jne 0x1002c551
mov dword [ebp - 0x90], 1
jmp 0x1002c55b
mov dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x14], eax
mov ecx, dword [0x100a20d8]
mov dword [ebp - 0x14], ecx
jmp 0x1002c1d5
mov ecx, 2
imul edx, ecx, 0x5d
movsx eax, word [edx + 0x102c1ba8]
and eax, dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
movzx ecx, word [ebp - 0x20]
imul edx, ecx, 0xc0c4
movsx eax, byte [0x100a2027]
sub eax, edx
mov byte [0x100a2027], al
mov dword [ebp - 0x3c], 0x59612efb
movzx eax, word [0x100a2118]
cdq
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x70]
xor edx, edx
div dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
movsx edx, byte [ecx + edx]
mov eax, dword [ebp + 0x10]
add eax, dword [ebp - 0x70]
movsx ecx, byte [eax]
xor ecx, edx
mov edx, dword [ebp + 0x10]
add edx, dword [ebp - 0x70]
mov byte [edx], cl
jmp 0x1002b04a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10