Function at 0x1003d850
Capabilities:
Authenticate hmac
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9c4
push ebx
push esi
push edi
mov eax, dword [0x100a2150]
mov ecx, dword [0x100a2154]
mov dword [ebp - 0x914], ecx
mov byte [ebp - 0x89], al
mov edx, dword [0x100a2120]
mov dword [ebp - 0x40], edx
movsx eax, word [0x100a20f0]
cdq
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov al, byte [0x100a20d0]
mov byte [ebp - 2], al
movzx eax, word [0x100a20e0]
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov ecx, 0x2732
mov word [ebp - 0x14], cx
mov dword [ebp - 0x4c], 0x88f9
mov dx, word [0x100a211c]
mov word [ebp - 8], dx
mov dword [ebp - 0x44], 0xe6
mov byte [ebp - 3], 0x4e
mov dword [ebp - 0x48], 0xb7174ceb
mov ax, word [0x100a20e4]
mov word [ebp - 0x10], ax
mov ecx, 0xffffb799
mov word [ebp - 0x1c], cx
mov edx, dword [0x100a2104]
mov byte [ebp - 4], dl
mov dword [ebp - 0x20], 0x590e2c39
mov eax, dword [0x100a2114]
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov eax, 0xd81
mov word [ebp - 0x18], ax
mov dword [ebp - 0x54], 0xf706eccf
mov eax, dword [0x100a2120]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov ecx, dword [0x100a2104]
mov byte [ebp - 1], cl
mov dword [ebp - 0x3c], 0x106c
mov dx, word [0x100a2110]
mov word [ebp - 0xc], dx
mov dword [ebp - 0x50], 0x2037
movsx ax, byte [0x100a2027]
mov word [ebp - 0x4a4], ax
mov ecx, 0xa80
mov word [ebp - 0x4a8], cx
mov edx, 0xffffa54d
mov word [ebp - 0x4ac], dx
movsx eax, word [0x100a2110]
mov dword [ebp - 0x918], eax
mov ecx, 0x34e8
mov word [ebp - 0x4b0], cx
mov dl, byte [0x100a20f0]
mov byte [ebp - 0x8a], dl
mov al, byte [0x100a2027]
mov byte [ebp - 0xef], al
mov cx, word [0x100a2138]
mov word [ebp - 0x4b4], cx
mov edx, dword [0x100a20f8]
mov dword [ebp - 0x91c], edx
mov dword [ebp - 0x920], 0x49
xor eax, eax
mov dword [ebp - 0x998], 0xfa
mov dword [ebp - 0x994], eax
movsx eax, word [0x100a2110]
cdq
mov dword [ebp - 0x9a0], eax
mov dword [ebp - 0x99c], edx
movzx eax, byte [0x100a207a]
cdq
mov dword [ebp - 0x9a8], eax
mov dword [ebp - 0x9a4], edx
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [ebp - 0x924], edx
mov dword [ebp - 0x928], ecx
movzx eax, word [0x100a2118]
mov dword [ebp - 0x92c], eax
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x9b0], ecx
mov dword [ebp - 0x9ac], edx
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x930], ecx
mov byte [ebp - 0xee], al
mov dl, byte [0x100a2110]
mov byte [ebp - 0xed], dl
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x934], ecx
mov dword [ebp - 0x938], eax
mov dword [ebp - 0x93c], 0x54
mov dl, byte [0x100a2128]
mov byte [ebp - 0xb9], dl
mov al, byte [0x100a20f0]
mov byte [ebp - 0xa2], al
mov byte [ebp - 0xa1], 0xe8
mov dword [ebp - 0x940], 0x9af5
movsx ecx, word [0x100a2110]
movsx edx, byte [ebp - 1]
cmp ecx, edx
jle 0x1003dab3
mov dword [ebp - 0xfc], 1
jmp 0x1003dabd
mov dword [ebp - 0xfc], 0
movsx eax, word [0x100a2110]
cmp eax, 0x57
jle 0x1003dad5
mov dword [ebp - 0x100], 1
jmp 0x1003dadf
mov dword [ebp - 0x100], 0
mov ecx, dword [ebp - 0xfc]
cmp ecx, dword [ebp - 0x100]
jne 0x1003de37
movzx eax, word [0x100a211c]
cdq
mov dword [ebp - 0x4e4], eax
mov dword [ebp - 0x4e0], edx
mov edx, dword [ebp - 0x4e0]
cmp edx, dword [ebp - 0x34]
ja 0x1003db29
jb 0x1003db1d
mov eax, dword [ebp - 0x4e4]
cmp eax, dword [ebp - 0x38]
ja 0x1003db29
mov dword [ebp - 0x104], 1
jmp 0x1003db33
mov dword [ebp - 0x104], 0
movsx ecx, word [ebp - 8]
cmp ecx, dword [ebp - 0x4c]
jae 0x1003db48
mov dword [ebp - 0x108], 1
jmp 0x1003db52
mov dword [ebp - 0x108], 0
mov edx, dword [ebp - 0x104]
cmp edx, dword [ebp - 0x108]
jge 0x1003db6c
mov dword [ebp - 0x10c], 1
jmp 0x1003db76
mov dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x10c]
not eax
test eax, eax
je 0x1003dd43
mov dword [ebp - 0xa8], 0
jmp 0x1003dba1
mov ecx, dword [ebp - 0xa8]
add ecx, 1
mov dword [ebp - 0xa8], ecx
cmp dword [ebp - 0xa8], 0x29d
jge 0x1003dd3e
movsx edx, word [ebp - 0x18]
movsx eax, byte [str.y4The_server_is_requ]
cmp edx, eax
jle 0x1003dc63
movzx ecx, word [0x100a2138]
test ecx, ecx
je 0x1003dc5e
movsx edx, word [0x100a20f0]
not edx
mov eax, dword [0x100a20f4]
not eax
add edx, eax
mov byte [str.y4The_server_is_requ], dl
movsx ecx, word [0x100a2110]
sub ecx, 0x624ce275
mov byte [ebp - 1], cl
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
or ecx, eax
or esi, edx
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], esi
movzx edx, byte [ebp - 3]
movsx eax, word [ebp - 0x1c]
sub edx, eax
movzx ecx, byte [ebp - 3]
sub ecx, edx
mov byte [ebp - 3], cl
movsx eax, byte [ebp - 1]
cdq
push 0xdc01
push 0x6177fd3b
push edx
push eax
call fcn.10073ef0
mov word [ebp - 0x14], ax
jmp 0x1003dd29
mov edx, dword [0x100a20d0]
or edx, dword [0x100a20d4]
jne 0x1003dc7d
mov dword [ebp - 0x110], 1
jmp 0x1003dc87
mov dword [ebp - 0x110], 0
movzx eax, byte [0x100a207a]
imul eax, dword [ebp - 0x110]
sub eax, 0x1d
cdq
mov ecx, eax
mov esi, edx
movzx eax, byte [ebp - 3]
cdq
mov edi, dword [0x100a2154]
sub eax, dword [0x100a2150]
sbb edx, edi
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x4e8], esi
mov edx, dword [ebp - 0x4ec]
or edx, dword [ebp - 0x4e8]
jne 0x1003dcd4
mov byte [ebp - 0x5d], 1
jmp 0x1003dcd8
mov byte [ebp - 0x5d], 0
mov al, byte [ebp - 0x5d]
mov byte [0x100a2027], al
movsx eax, byte [0x100a2027]
cdq
add eax, 0x462d7e62
mov byte [ebp - 3], al
mov cx, word [0x100a20c8]
mov word [0x100a211c], cx
mov ecx, dword [0x100a20f8]
add ecx, 0xe47f80c3
movzx eax, word [ebp - 0xc]
cdq
xor eax, ecx
mov word [ebp - 0xc], ax
movzx edx, word [0x100a2124]
xor edx, dword [0x100a20f4]
mov word [0x100a2124], dx
mov ax, word [0x100a2124]
add ax, 1
mov word [0x100a2124], ax
jmp 0x1003db92
jmp 0x1003de32
cmp dword [0x100a2100], 0
je 0x1003ddde
mov esi, dword [ebp - 0x20]
xor edi, edi
mov ecx, dword [ebp - 0x44]
xor ebx, ebx
xor ecx, dword [0x100a20f8]
xor ebx, dword [0x100a20fc]
movsx eax, word [0x100a20c8]
not eax
movzx edx, word [ebp - 0xc]
imul eax, edx
cdq
push edx
push eax
push ebx
push ecx
call fcn.10073ef0
push edx
push eax
push edi
push esi
call fcn.10073ef0
mov word [ebp - 0x10], ax
movsx eax, byte [0x100a203b]
movzx ecx, byte [0x100a207b]
sub eax, ecx
movsx edx, byte [0x100a203b]
sub edx, eax
mov byte [0x100a203b], dl
movsx eax, byte [0x100a203b]
and eax, dword [ebp - 0x20]
movsx ecx, byte [0x100a203b]
imul ecx, eax
mov byte [0x100a203b], cl
mov eax, dword [0x100a2104]
add eax, 0x7f33
cdq
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
jmp 0x1003de32
cmp dword [ebp - 0x4c], 0
je 0x1003de32
mov edx, dword [0x100a20d0]
mov eax, dword [0x100a20d4]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], eax
movsx ecx, word [ebp - 0x14]
movsx edx, word [ebp - 0x1c]
add ecx, edx
mov word [ebp - 0x14], cx
movsx eax, byte [str.y4The_server_is_requ]
not eax
mov byte [ebp - 2], al
mov ecx, dword [ebp - 0x50]
sub ecx, dword [ebp - 0x44]
mov dword [ebp - 0x50], ecx
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x944], eax
add edx, 0x5526
mov dword [ebp - 0x4c], edx
jmp 0x1003defb
cmp dword [0x100a20e4], 0
je 0x1003defb
imul ecx, dword [0x100a2100], 0x8c77bcee
test ecx, ecx
jne 0x1003de5e
mov dword [ebp - 0x114], 1
jmp 0x1003de68
mov dword [ebp - 0x114], 0
imul edx, dword [0x100a2100], 0xc83476c7
movzx eax, byte [ebp - 3]
imul edx, eax
not edx
mov ecx, dword [ebp - 0x48]
xor ecx, dword [0x100a2128]
sub ecx, dword [ebp - 0x114]
not ecx
add edx, ecx
mov word [0x100a20c8], dx
mov edx, dword [0x100a2c3c]
mov dword [0x100a20e4], edx
cmp dword [ebp - 0x48], 0
je 0x1003dec0
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x3ac], ecx
jmp 0x1003ded1
mov edx, dword [ebp - 0x48]
xor eax, eax
mov dword [ebp - 0x3b0], edx
mov dword [ebp - 0x3ac], eax
mov ecx, dword [ebp - 0x3b0]
mov dword [0x100a2120], ecx
movsx eax, byte [0x100a2027]
cdq
and eax, 0x1592f10e
mov dword [0x100a2114], eax
mov edx, dword [ebp - 0x3c]
shl edx, 5
mov byte [str.y4The_server_is_requ], dl
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0xac], eax
mov byte [str.y4The_server_is_requ], 1
movsx ecx, word [ebp - 8]
movsx edx, word [ebp - 0x1c]
sub ecx, edx
movsx eax, word [ebp - 8]
or eax, ecx
mov word [ebp - 8], ax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
and ecx, dword [ebp - 0x5c]
and edx, dword [ebp - 0x58]
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
movzx eax, word [0x100a211c]
cdq
add eax, dword [ebp - 0x5c]
adc edx, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x5c]
sub ecx, eax
mov eax, dword [ebp - 0x58]
sbb eax, edx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0xac]
add ecx, 0x4e8
mov dword [ebp - 0x97c], ecx
mov edx, dword [ebp - 0x54]
sub edx, dword [ebp - 0x4c]
mov dword [ebp - 0x54], edx
movsx eax, word [0x100a20c8]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x94c], eax
sub edx, 0x377bac5f
mov dword [0x100a2100], edx
movzx eax, word [0x100a20e0]
cdq
sub eax, 0xe010de0d
sbb edx, 0xb7e3
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movsx eax, word [0x100a2110]
cdq
add eax, dword [ebp - 0x38]
mov word [0x100a2110], ax
mov ecx, 2
mov word [0x100a20e0], cx
mov edx, dword [ebp - 0xac]
add edx, 0x2cd
mov dword [ebp - 0x198], edx
mov dword [0x100a20d8], 0xb7
movsx eax, byte [ebp - 1]
cdq
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0x950], edx
add eax, ecx
mov byte [ebp - 1], al
movsx eax, word [0x100a20c8]
movzx ecx, byte [ebp - 3]
sub eax, ecx
movsx edx, word [ebp - 0x18]
add eax, edx
movzx ecx, byte [str.HeapSize]
and ecx, dword [0x100a20e4]
movzx edx, word [0x100a2124]
imul ecx, edx
not ecx
xor eax, ecx
mov byte [0x100a207a], al
mov eax, dword [ebp - 0xac]
add eax, 0x422
mov dword [ebp - 0x194], eax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x4f4], ecx
mov dword [ebp - 0x4f0], edx
mov eax, dword [ebp - 0x4f4]
or eax, dword [ebp - 0x4f0]
je 0x1003e093
mov ecx, dword [0x100a2114]
mov dword [ebp - 0x118], ecx
jmp 0x1003e09f
mov edx, dword [0x100a20dc]
mov dword [ebp - 0x118], edx
mov eax, dword [ebp - 0x118]
mov dword [0x100a2104], eax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
sub ecx, 0xa89cc048
sbb edx, 0x90727
mov dword [0x100a20d0], ecx
mov dword [0x100a20d4], edx
mov eax, dword [0x100a2100]
add eax, 0xbf
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, 0x13fd5025
xor edx, edx
mov dword [0x100a2148], ecx
mov dword [0x100a214c], edx
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0xb4], eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [0x100a2120], eax
cmp dword [0x100a2120], 0
je 0x1003e1d5
cmp dword [ebp - 0x20], 0
je 0x1003e1a7
mov ecx, dword [ebp - 0x54]
add ecx, 0x364024b2
xor edx, edx
mov dword [0x100a2150], ecx
mov dword [0x100a2154], edx
movsx eax, word [ebp - 0x14]
sub eax, 0x25
mov word [0x100a2118], ax
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
push 0
push 0x2d53
push edx
push ecx
call fcn.10073ef0
mov dword [0x100a2120], eax
mov ecx, dword [0x100a2140]
not ecx
mov esi, dword [0x100a2144]
not esi
xor edx, edx
xor ecx, dword [ebp - 0x50]
xor esi, edx
movsx eax, word [0x100a20c8]
cdq
or ecx, eax
or esi, edx
movsx eax, word [ebp - 0x1c]
mov edx, dword [ebp - 0x4c]
add edx, 0xf2
imul eax, edx
xor edx, edx
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a2120], eax
jmp 0x1003e1d0
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + 0x1016ec20]
movsx eax, byte [ebp - 1]
sub eax, edx
mov byte [ebp - 1], al
mov byte [ebp - 3], 0x22
movsx ecx, byte [ebp - 2]
add ecx, 0x12
mov byte [0x100a207b], cl
jmp 0x1003e263
mov edx, dword [0x100a2100]
add edx, 0x6b325598
xor eax, eax
mov dword [0x100a2140], edx
mov dword [0x100a2144], eax
movzx ecx, word [0x100a2124]
add ecx, 0x49e8e99
movsx edx, byte [ebp - 1]
movsx eax, byte [ebp - 1]
add edx, eax
sub ecx, edx
movsx edx, word [0x100a2110]
add edx, 0x5b41
sub ecx, edx
mov byte [ebp - 3], cl
movsx eax, byte [0x100a2027]
mov ecx, dword [0x100a2104]
sub ecx, eax
mov edx, dword [0x100a2104]
and edx, ecx
mov dword [0x100a2104], edx
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
add eax, 0x2ed4cf55
adc ecx, 0xd826d
mov dword [0x100a2130], eax
mov dword [0x100a2134], ecx
movsx dx, byte [ebp - 2]
mov word [0x100a2138], dx
mov eax, dword [ebp - 0xb4]
add eax, 0x55d
mov dword [ebp - 0x954], eax
movsx eax, word [ebp - 0x14]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x4fc], eax
mov dword [ebp - 0x4f8], edx
mov dword [ebp - 0x504], ecx
mov dword [ebp - 0x500], esi
mov edx, dword [ebp - 0x4fc]
cmp edx, dword [ebp - 0x504]
jne 0x1003e2bf
mov eax, dword [ebp - 0x4f8]
cmp eax, dword [ebp - 0x500]
jne 0x1003e2bf
mov dword [ebp - 0x11c], 1
jmp 0x1003e2c9
mov dword [ebp - 0x11c], 0
movsx ecx, word [ebp - 0x14]
cmp ecx, 0x33
jne 0x1003e2de
mov dword [ebp - 0x120], 1
jmp 0x1003e2e8
mov dword [ebp - 0x120], 0
mov edx, dword [ebp - 0x11c]
cmp edx, dword [ebp - 0x120]
jle 0x1003e363
mov eax, dword [ebp - 0x44]
add eax, 0x25
movsx ecx, word [ebp - 8]
sub ecx, eax
mov word [ebp - 8], cx
movsx edx, word [0x100a20f0]
imul eax, edx, 0x4e7c48be
cdq
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
mov eax, 1
imul ecx, eax, 0x47
mov dl, byte [ebp - 0x1c]
mov byte [ecx + 0x100b3380], dl
movsx eax, byte [ebp - 1]
imul ecx, eax, 0xb2
mov byte [0x100a207a], cl
movsx edx, word [ebp - 0x10]
movsx eax, byte [str.y4The_server_is_requ]
imul edx, eax
mov word [ebp - 0x10], dx
mov ecx, dword [ebp - 0x50]
xor ecx, 0x6cd31d55
mov byte [str.y4The_server_is_requ], cl
jmp 0x1003e3c1
mov ecx, dword [0x100a2140]
not ecx
mov esi, dword [0x100a2144]
not esi
mov eax, dword [0x100a20f4]
not eax
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x50c], eax
mov dword [ebp - 0x508], edx
mov edx, dword [ebp - 0x50c]
or edx, dword [ebp - 0x508]
je 0x1003e3c1
movsx eax, byte [ebp - 2]
add eax, 0x4de20289
mov dword [ebp - 0x40], eax
mov cx, word [ebp - 0x48]
mov word [0x100a211c], cx
xor edx, edx
mov dword [ebp - 0x28], 0x73
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0xb4]
add eax, 0x2bb
mov dword [ebp - 0x958], eax
cmp dword [0x100a2100], 0
jne 0x1003e3ef
xor ecx, ecx
mov dword [ebp - 0x3b8], 1
mov dword [ebp - 0x3b4], ecx
jmp 0x1003e3fa
xorps xmm0, xmm0
movlpd qword [ebp - 0x3b8], xmm0
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x3b8]
sbb eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x514], edx
mov dword [ebp - 0x510], eax
mov ecx, dword [ebp - 0x514]
or ecx, dword [ebp - 0x510]
je 0x1003e43b
movsx edx, byte [ebp - 1]
cmp edx, 0x55
je 0x1003e43b
mov dword [ebp - 0x128], 0
jmp 0x1003e445
mov dword [ebp - 0x128], 1
cmp dword [0x100a2128], 0
jne 0x1003e45a
mov dword [ebp - 0x124], 1
jmp 0x1003e464
mov dword [ebp - 0x124], 0
mov eax, dword [0x100a20f4]
add eax, dword [ebp - 0x124]
jne 0x1003e486
mov ecx, 1
test ecx, ecx
jne 0x1003e486
mov dword [ebp - 0x12c], 0
jmp 0x1003e490
mov dword [ebp - 0x12c], 1
mov edx, dword [ebp - 0x128]
cmp edx, dword [ebp - 0x12c]
je 0x1003e67e
movsx eax, word [0x100a20c8]
not eax
cdq
mov dword [ebp - 0x51c], eax
mov dword [ebp - 0x518], edx
mov eax, dword [ebp - 0x518]
cmp eax, dword [0x100a20fc]
jg 0x1003e4e2
jl 0x1003e4d6
mov ecx, dword [ebp - 0x51c]
cmp ecx, dword [0x100a20f8]
jae 0x1003e4e2
mov dword [ebp - 0x130], 1
jmp 0x1003e4ec
mov dword [ebp - 0x130], 0
mov edx, dword [0x100a2120]
cmp dword [ebp - 0x130], edx
jl 0x1003e679
mov byte [ebp - 1], 2
movsx eax, byte [0x100a2027]
add eax, 0xe2bc
movzx ecx, word [ebp - 0xc]
xor ecx, eax
mov word [ebp - 0xc], cx
mov edx, 4
imul eax, edx, 0x42
mov ecx, dword [eax + 0x101e2100]
xor edx, edx
push edx
push ecx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10073ef0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov dl, byte [ebp - 1]
mov byte [ebp - 0xb0], dl
cmp byte [ebp - 0xb0], 0
je 0x1003e56a
cmp byte [ebp - 0xb0], 1
je 0x1003e5ce
cmp byte [ebp - 0xb0], 2
je 0x1003e62f
jmp 0x1003e679
movzx eax, byte [0x100a207b]
movsx ecx, byte [ebp - 1]
imul eax, ecx
mov byte [0x100a207b], al
mov edx, dword [ebp - 0x38]
or edx, dword [ebp - 0x34]
je 0x1003e598
movsx eax, byte [ebp - 2]
cdq
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x38c], edx
jmp 0x1003e5aa
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x38c], ecx
mov edx, dword [ebp - 0x390]
mov eax, dword [ebp - 0x38c]
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
imul ecx, dword [ebp - 0x54], 0xfa
mov byte [0x100a207b], cl
jmp 0x1003e679
movsx eax, word [ebp - 0x1c]
cdq
sub eax, 0x5753101d
mov dword [0x100a20f4], eax
movzx edx, word [ebp - 0xc]
add edx, 0x6a27c6d7
imul edx, dword [0x100a2100]
mov dword [0x100a2100], edx
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
push 0
push 0x41b0264d
push ecx
push eax
call fcn.10073ef0
mov dword [0x100a20e4], eax
mov edx, dword [0x100a2120]
sub edx, 0xe68b
movzx eax, word [0x100a2124]
sub eax, edx
mov word [0x100a2124], ax
jmp 0x1003e679
mov ecx, dword [ebp - 0x50]
and ecx, dword [ebp - 0x40]
movsx edx, word [ebp - 0x10]
imul edx, dword [0x100a20d8]
imul ecx, edx
movzx eax, word [0x100a2124]
not eax
movsx edx, word [ebp - 0x18]
movsx esi, word [0x100a20f0]
sub edx, esi
imul eax, edx
not eax
and ecx, eax
mov dword [ebp - 0x48], ecx
mov ecx, dword [0x100a20d0]
sub ecx, 0xafd5
movsx eax, byte [ebp - 1]
cdq
add eax, ecx
mov byte [ebp - 1], al
jmp 0x1003e808
mov eax, dword [0x100a2114]
cdq
mov esi, eax
mov edi, edx
push 0
push 0
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ebp - 0x38]
push eax
call fcn.10073ef0
add esi, eax
adc edi, edx
mov dword [ebp - 0x524], esi
mov dword [ebp - 0x520], edi
mov ecx, dword [ebp - 0x524]
or ecx, dword [ebp - 0x520]
je 0x1003e808
movzx eax, byte [str.HeapSize]
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
movsx eax, byte [ebp - 1]
not eax
cdq
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x95c], ecx
sub eax, edx
mov byte [0x100a2027], al
cmp dword [ebp - 0x54], 0
jne 0x1003e702
xor edx, edx
mov dword [ebp - 0x3c8], 1
mov dword [ebp - 0x3c4], edx
jmp 0x1003e70d
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c8], xmm0
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0x52c], eax
mov dword [ebp - 0x528], ecx
mov edx, dword [ebp - 0x52c]
or edx, dword [ebp - 0x528]
jne 0x1003e746
xor eax, eax
mov dword [ebp - 0x3c0], 1
mov dword [ebp - 0x3bc], eax
jmp 0x1003e751
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c0], xmm0
movsx eax, word [0x100a20c8]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
not ecx
not esi
add eax, ecx
adc edx, esi
not eax
not edx
xor eax, 0x2011
xor edx, 0
mov ecx, dword [ebp - 0x3c0]
add ecx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x3bc]
adc esi, dword [ebp - 0x58]
mov edi, dword [ebp - 0x3c8]
sub edi, ecx
mov ecx, dword [ebp - 0x3c4]
sbb ecx, esi
add eax, edi
adc edx, ecx
mov dword [ebp - 0x534], eax
mov dword [ebp - 0x530], edx
mov edx, dword [ebp - 0x534]
or edx, dword [ebp - 0x530]
jne 0x1003e7c4
mov eax, 1
mov word [ebp - 0x68], ax
jmp 0x1003e7ca
xor ecx, ecx
mov word [ebp - 0x68], cx
mov dx, word [ebp - 0x68]
mov word [0x100a2138], dx
movsx eax, word [0x100a2110]
add eax, dword [0x100a20dc]
movsx ecx, word [0x100a2110]
sub ecx, eax
mov word [0x100a2110], cx
cmp dword [ebp - 0x3c], 0
jne 0x1003e7fe
mov byte [ebp - 0x5e], 1
jmp 0x1003e802
mov byte [ebp - 0x5e], 0
mov dl, byte [ebp - 0x5e]
mov byte [ebp - 3], dl
mov eax, dword [ebp - 0xb4]
add eax, 0x33c
mov dword [ebp - 0x248], eax
movzx ecx, word [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a211c], ax
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0xb8], edx
movsx eax, word [ebp - 0x10]
movsx ecx, byte [0x100a2027]
imul eax, ecx
not eax
mov dword [ebp - 0x4c], eax
xor edx, edx
mov dword [0x100a2140], 0x9d23491f
mov dword [0x100a2144], edx
movzx eax, byte [ebp - 3]
cdq
mov ecx, eax
mov edx, dword [0x100a2150]
mov eax, dword [0x100a2154]
mov dword [ebp - 0x960], eax
add ecx, edx
movzx eax, byte [ebp - 3]
cdq
sub eax, ecx
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0xb8]
add ecx, 0x508
mov dword [ebp - 0x490], ecx
movzx edx, word [0x100a2124]
cmp dword [ebp - 0x20], edx
jb 0x1003eb0d
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x538], ecx
mov edx, dword [ebp - 0x53c]
or edx, dword [ebp - 0x538]
je 0x1003ea8e
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x3c]
jb 0x1003e8de
mov dword [ebp - 0x134], 1
jmp 0x1003e8e8
mov dword [ebp - 0x134], 0
cmp dword [ebp - 0x54], 0x37
jb 0x1003e8fa
mov dword [ebp - 0x138], 1
jmp 0x1003e904
mov dword [ebp - 0x138], 0
mov ecx, dword [ebp - 0x134]
cmp ecx, dword [ebp - 0x138]
jge 0x1003e9fa
mov edx, dword [ebp - 0x50]
cmp dword [0x100a20d8], edx
je 0x1003e9f5
movzx eax, byte [0x100a207a]
sar eax, 6
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
cmp dword [0x100a2104], 0
jne 0x1003e950
mov dword [ebp - 0x13c], 1
jmp 0x1003e95a
mov dword [ebp - 0x13c], 0
movzx eax, word [0x100a2124]
add eax, dword [ebp - 0x48]
jne 0x1003e972
mov dword [ebp - 0x140], 1
jmp 0x1003e97c
mov dword [ebp - 0x140], 0
mov ecx, dword [ebp - 0x13c]
sub ecx, 0xd
xor ecx, dword [ebp - 0x140]
mov word [0x100a2118], cx
movsx eax, word [0x100a2110]
sub eax, 0xda9d
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
push 0x42c4e
push 0x9146bfda
push edx
push eax
call fcn.10073ef0
mov dword [0x100a20d8], eax
movzx edx, word [0x100a2118]
test edx, edx
jne 0x1003e9db
mov dword [ebp - 0x144], 1
jmp 0x1003e9e5
mov dword [ebp - 0x144], 0
movzx eax, word [0x100a211c]
add eax, dword [ebp - 0x144]
mov dword [ebp - 0x50], eax
jmp 0x1003ea8c
cmp dword [0x100a2120], 0
je 0x1003ea8c
movsx ecx, word [0x100a2110]
test ecx, ecx
jne 0x1003ea1e
mov dword [ebp - 0x148], 1
jmp 0x1003ea28
mov dword [ebp - 0x148], 0
mov edx, dword [ebp - 0x50]
add edx, dword [ebp - 0x148]
not edx
mov byte [str.y4The_server_is_requ], dl
imul eax, dword [0x100a2120], 0xd076
movzx ecx, word [0x100a2118]
sub ecx, eax
mov word [0x100a2118], cx
mov edx, dword [ebp - 0x50]
mov byte [ebp - 3], dl
movsx eax, byte [0x100a2027]
movsx ecx, byte [str.y4The_server_is_requ]
sub eax, ecx
movsx edx, word [0x100a20f0]
imul eax, edx
mov word [ebp - 0xc], ax
movsx eax, word [ebp - 0x14]
sub eax, 0x8cd4
mov dword [ebp - 0x54], eax
mov cl, byte [ebp - 2]
sub cl, 1
mov byte [ebp - 2], cl
jmp 0x1003eb0b
movzx edx, word [ebp - 0xc]
not edx
cmp edx, dword [ebp - 0x20]
jne 0x1003eaa5
mov dword [ebp - 0x14c], 1
jmp 0x1003eaaf
mov dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x14c]
not eax
test eax, eax
je 0x1003eb0b
movsx eax, byte [ebp - 1]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
xor ecx, eax
xor esi, edx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov ecx, 1
imul edx, ecx, 9
mov al, byte [ebp - 0x4c]
mov byte [edx + 0x102b76dc], al
imul ecx, dword [0x100a20dc], 0x7e
mov word [ebp - 8], cx
movzx edx, word [0x100a2124]
xor edx, 0x7c15
mov dword [ebp - 0x48], edx
jmp 0x1003eb85
movzx eax, byte [ebp - 4]
sub eax, 0x57ad36c6
mov dword [0x100a20f4], eax
movsx eax, byte [ebp - 2]
cdq
add eax, 0xdc6361e8
mov byte [str.y4The_server_is_requ], al
xor ecx, ecx
mov dword [0x100a2148], 0x3e850a79
mov dword [0x100a214c], ecx
movzx edx, word [0x100a2118]
add edx, dword [0x100a20dc]
mov dword [0x100a20dc], edx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
sub eax, 0xd9c0abae
sbb ecx, 0xc2d0d
mov edx, dword [0x100a2150]
mov esi, dword [0x100a2154]
push ecx
push eax
push esi
push edx
call fcn.10073ef0
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
mov eax, dword [ebp - 0xb8]
add eax, 0x49d
mov dword [ebp - 0x330], eax
mov ecx, 2
imul edx, ecx, 0x692
movzx eax, word [edx + 0x102b7710]
movsx ecx, word [0x100a20c8]
imul ecx, eax
mov word [0x100a20c8], cx
movsx edx, byte [ebp - 1]
imul eax, edx, 0xa86f
mov byte [ebp - 2], al
movsx eax, word [ebp - 0x18]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, eax
adc esi, edx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
and edx, ecx
and eax, esi
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], eax
mov eax, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov cl, 3
call fcn.10073f30
mov byte [ebp - 3], al
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
add ecx, 0x25944b07
adc edx, 0
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0xb8]
add eax, 0x412
mov dword [ebp - 0x964], eax
movzx eax, word [0x100a2138]
cdq
mov ecx, dword [ebp - 0x38]
not ecx
mov esi, dword [ebp - 0x34]
not esi
sub eax, ecx
sbb edx, esi
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x540], edx
mov edx, dword [ebp - 0x544]
or edx, dword [ebp - 0x540]
jne 0x1003ec62
mov dword [ebp - 0x150], 1
jmp 0x1003ec6c
mov dword [ebp - 0x150], 0
movzx eax, word [ebp - 0xc]
mov ecx, dword [ebp - 0x50]
add ecx, eax
sub ecx, dword [ebp - 0x150]
mov word [ebp - 0x18], cx
mov dx, word [0x100a2110]
mov word [ebp - 0xc], dx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x968], ecx
add eax, 2
mov dword [0x100a20f4], eax
movsx edx, word [ebp - 0x18]
movsx eax, word [ebp - 0x14]
cmp edx, eax
jne 0x1003ecbb
mov dword [ebp - 0x154], 1
jmp 0x1003ecc5
mov dword [ebp - 0x154], 0
movsx ecx, word [ebp - 0x18]
cmp ecx, 0x28
jne 0x1003ecda
mov dword [ebp - 0x158], 1
jmp 0x1003ece4
mov dword [ebp - 0x158], 0
mov edx, dword [ebp - 0x154]
cmp edx, dword [ebp - 0x158]
jl 0x1003eda2
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
movzx eax, byte [0x100a207b]
cdq
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x548], esi
mov dword [ebp - 0x554], eax
mov dword [ebp - 0x550], edx
mov edx, dword [ebp - 0x548]
cmp edx, dword [ebp - 0x550]
ja 0x1003ed3c
jb 0x1003ed3a
mov eax, dword [ebp - 0x54c]
cmp eax, dword [ebp - 0x554]
ja 0x1003ed3c
jmp 0x1003eda0
movsx ecx, byte [ebp - 1]
test ecx, ecx
je 0x1003eda0
movzx edx, word [0x100a2138]
sub edx, 0x5e
mov word [0x100a211c], dx
mov eax, dword [ebp - 0x40]
sub eax, 0xc8f1
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [0x100a20dc]
mov eax, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x96c], ecx
add eax, edx
mov dword [0x100a20dc], eax
mov eax, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov cl, 1
call fcn.10073f50
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], edx
jmp 0x1003ee0b
movsx edx, word [ebp - 8]
test edx, edx
je 0x1003ee0b
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
add eax, 0x496e1e27
adc ecx, 0
mov dword [0x100a2140], eax
mov dword [0x100a2144], ecx
movsx edx, word [ebp - 8]
imul eax, edx, 0x6d3b
mov word [0x100a2124], ax
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
push esi
push eax
push edx
push ecx
call fcn.10073ef0
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], esi
mov dx, word [0x100a20f8]
mov word [0x100a211c], dx
movzx eax, byte [str.HeapSize]
cmp dword [ebp - 0x4c], eax
jb 0x1003f062
mov dword [ebp - 0x40], 3
movsx eax, word [ebp - 8]
sar eax, 1
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movsx ecx, word [0x100a20c8]
sub ecx, 0xe0
movzx edx, byte [ebp - 3]
sub edx, ecx
mov byte [ebp - 3], dl
movsx eax, word [ebp - 0x10]
movzx ecx, word [0x100a2118]
add eax, ecx
mov word [ebp - 0x10], ax
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x15c], edx
cmp dword [ebp - 0x15c], 3
ja case.default.0x1003ee77
mov eax, dword [ebp - 0x15c]
jmp dword [eax*4 + 0x10045ec4]
mov ecx, dword [ebp - 0x40]
add ecx, 0x5c1a
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x970], eax
not edx
mov dword [ebp - 0x44], edx
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x40], ecx
movsx eax, word [ebp - 0x10]
not eax
cdq
push edx
push eax
mov edx, dword [0x100a2144]
push edx
mov eax, dword [0x100a2140]
push eax
call fcn.10073ef0
mov dword [ebp - 0x55c], eax
mov dword [ebp - 0x558], edx
mov ecx, dword [ebp - 0x55c]
or ecx, dword [ebp - 0x558]
jne 0x1003eedf
mov byte [ebp - 0x5f], 1
jmp 0x1003eee3
mov byte [ebp - 0x5f], 0
mov dl, byte [ebp - 0x5f]
mov byte [str.y4The_server_is_requ], dl
mov eax, dword [ebp - 0x44]
shr eax, 7
mov dword [ebp - 0x48], eax
jmp case.default.0x1003ee77
movsx ecx, byte [ebp - 1]
add ecx, 0xfa
movzx edx, word [0x100a2124]
imul edx, ecx
mov word [0x100a2124], dx
imul eax, dword [ebp - 0x48], 0xb40d623b
mov dword [0x100a20e4], eax
mov ecx, 2
shl ecx, 5
movzx edx, word [ecx + 0x100b33e0]
movsx eax, byte [0x100a203b]
sub eax, edx
mov byte [0x100a203b], al
mov ecx, dword [ebp - 0x44]
sub ecx, 0xaf8c
xor edx, edx
mov dword [0x100a2140], ecx
mov dword [0x100a2144], edx
jmp case.default.0x1003ee77
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov byte [0x100a207b], 0x67
mov edx, dword [ebp - 0x48]
xor eax, eax
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov edx, dword [ebp - 0x48]
sub edx, eax
mov dword [ebp - 0x48], edx
mov eax, dword [0x100a20f8]
or eax, dword [0x100a20fc]
jne 0x1003efa7
mov dword [ebp - 0x160], 1
jmp 0x1003efb1
mov dword [ebp - 0x160], 0
mov ecx, dword [0x100a20d8]
not ecx
add ecx, dword [ebp - 0x160]
mov esi, ecx
movsx eax, byte [0x100a203b]
cdq
xor eax, dword [ebp - 0x5c]
not eax
xor esi, eax
mov ecx, dword [0x100a20e4]
xor edi, edi
and ecx, 0x85390ee7
and edi, 0x47c4f
movsx eax, word [ebp - 0x14]
cdq
push edx
push eax
push edi
push ecx
call fcn.10073ef0
sub esi, eax
mov dword [ebp - 0x50], esi
movzx edx, word [ebp - 0xc]
movsx eax, byte [ebp - 1]
mov ecx, dword [0x100a2114]
add ecx, eax
sub edx, ecx
not edx
movsx eax, word [0x100a2110]
xor edx, eax
mov dword [0x100a2114], edx
jmp case.default.0x1003ee77
mov ecx, dword [0x100a2114]
imul ecx, dword [0x100a2120]
mov dword [ebp - 0x44], ecx
mov edx, dword [0x100a20e4]
mov ecx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x974], eax
xor ecx, edx
mov eax, dword [0x100a2148]
mov edx, dword [0x100a214c]
call fcn.10074000
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
jmp 0x1003f09b
movsx ecx, byte [ebp - 1]
test ecx, ecx
je 0x1003f09b
mov edx, dword [0x100a20f4]
mov eax, 1
imul ecx, eax, 0xa
mov byte [ecx + 0x102b76dc], dl
mov edx, 0xfffff5fd
mov word [0x100a20c8], dx
movsx eax, word [0x100a20c8]
sub eax, 0x5c1613b0
mov byte [0x100a207a], al
mov dword [ebp - 0x7c], 0
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x978], edx
add eax, ecx
mov byte [str.y4The_server_is_requ], al
movsx eax, word [0x100a20c8]
test eax, eax
jne 0x1003f0dc
xor ecx, ecx
mov dword [ebp - 0x3d0], 1
mov dword [ebp - 0x3cc], ecx
jmp 0x1003f0e7
xorps xmm0, xmm0
movlpd qword [ebp - 0x3d0], xmm0
mov edx, dword [0x100a20d0]
add edx, dword [ebp - 0x3d0]
mov eax, dword [0x100a20d4]
adc eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x564], edx
mov dword [ebp - 0x560], eax
mov ecx, dword [ebp - 0x564]
or ecx, dword [ebp - 0x560]
jne 0x1003f12c
xor edx, edx
mov dword [ebp - 0x3d8], 1
mov dword [ebp - 0x3d4], edx
jmp 0x1003f137
xorps xmm0, xmm0
movlpd qword [ebp - 0x3d8], xmm0
mov esi, dword [ebp - 0x4c]
xor edi, edi
mov eax, dword [0x100a214c]
add esi, dword [0x100a2148]
adc edi, eax
add esi, dword [ebp - 0x3d8]
adc edi, dword [ebp - 0x3d4]
movzx eax, byte [ebp - 4]
add eax, 0xbefb
cdq
mov ebx, eax
mov eax, edx
mov ecx, dword [ebp - 0x54]
xor edx, edx
mov dword [ebp - 0x4c0], edi
mov edi, dword [0x100a2150]
mov dword [ebp - 0x4bc], esi
mov esi, dword [0x100a2154]
push esi
push edi
push edx
push ecx
mov dword [ebp - 0x4b8], eax
call fcn.10073ef0
not eax
not edx
add ebx, eax
mov esi, dword [ebp - 0x4b8]
adc esi, edx
mov edi, dword [ebp - 0x4bc]
sub edi, ebx
mov ebx, dword [ebp - 0x4c0]
sbb ebx, esi
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], ebx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
push edx
mov edx, dword [ebp - 0x38]
push edx
push ecx
push eax
call fcn.10073ef0
not eax
mov dword [0x100a20e4], eax
movsx eax, byte [ebp - 1]
cdq
xor eax, 0x9c23e96f
mov byte [ebp - 3], al
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
not eax
not ecx
mov edx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
sub edx, eax
sbb esi, ecx
mov dword [ebp - 0x56c], edx
mov dword [ebp - 0x568], esi
mov eax, dword [ebp - 0x56c]
or eax, dword [ebp - 0x568]
jne 0x1003f221
mov dword [ebp - 0x164], 1
jmp 0x1003f22b
mov dword [ebp - 0x164], 0
mov ecx, dword [ebp - 0x50]
sub ecx, dword [0x100a20dc]
jne 0x1003f242
mov dword [ebp - 0x168], 1
jmp 0x1003f24c
mov dword [ebp - 0x168], 0
mov edx, dword [ebp - 0x164]
sub edx, dword [ebp - 0x168]
mov word [0x100a2118], dx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x9c4], ecx
sub eax, 0xa7f478bc
mov word [ebp - 0x18], ax
mov dword [ebp - 0x980], 0
mov eax, dword [ebp - 0x3c]
cdq
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
mov dword [ebp - 0x574], eax
mov dword [ebp - 0x570], edx
mov dword [ebp - 0x57c], ecx
mov dword [ebp - 0x578], esi
mov edx, dword [ebp - 0x570]
cmp edx, dword [ebp - 0x578]
jb 0x1003f2d0
ja 0x1003f2c4
mov eax, dword [ebp - 0x574]
cmp eax, dword [ebp - 0x57c]
jb 0x1003f2d0
mov dword [ebp - 0x16c], 1
jmp 0x1003f2da
mov dword [ebp - 0x16c], 0
cmp dword [ebp - 0x3c], 0x60
jl 0x1003f2ec
mov dword [ebp - 0x170], 1
jmp 0x1003f2f6
mov dword [ebp - 0x170], 0
mov ecx, dword [ebp - 0x16c]
cmp ecx, dword [ebp - 0x170]
je 0x1003f3df
movzx edx, word [0x100a2118]
not edx
movsx eax, byte [ebp - 1]
add edx, eax
jne 0x1003f324
mov ecx, 1
mov word [ebp - 0x6a], cx
jmp 0x1003f32a
xor edx, edx
mov word [ebp - 0x6a], dx
mov ax, word [ebp - 0x6a]
mov word [ebp - 0x10], ax
movsx eax, byte [str.y4The_server_is_requ]
cdq
push 0xb79f5
push 0x173f5674
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x48], eax
movsx ecx, word [ebp - 0x18]
test ecx, ecx
jne 0x1003f362
mov dword [ebp - 0x174], 1
jmp 0x1003f36c
mov dword [ebp - 0x174], 0
mov edx, dword [ebp - 0x174]
xor edx, 0x2565
mov dword [0x100a2114], edx
cmp dword [ebp - 0x4c], 0
jne 0x1003f390
mov dword [ebp - 0x178], 1
jmp 0x1003f39a
mov dword [ebp - 0x178], 0
movzx eax, word [0x100a20e0]
add eax, dword [ebp - 0x178]
jne 0x1003f3bd
xor ecx, ecx
mov dword [ebp - 0x3e0], 1
mov dword [ebp - 0x3dc], ecx
jmp 0x1003f3c8
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e0], xmm0
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x3dc]
mov dword [0x100a2140], edx
mov dword [0x100a2144], eax
mov dword [ebp - 0x984], 0
movzx ecx, word [ebp - 0xc]
test ecx, ecx
jne 0x1003f405
xor edx, edx
mov dword [ebp - 0x3e8], 1
mov dword [ebp - 0x3e4], edx
jmp 0x1003f410
xorps xmm0, xmm0
movlpd qword [ebp - 0x3e8], xmm0
mov ecx, dword [0x100a20d0]
add ecx, dword [ebp - 0x3e8]
mov esi, dword [0x100a20d4]
adc esi, dword [ebp - 0x3e4]
movzx edx, word [0x100a211c]
mov eax, dword [0x100a20f4]
imul eax, edx
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov byte [ebp - 1], al
mov eax, dword [0x100a20f8]
sub eax, 0x40
mov word [ebp - 0x10], ax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
add ecx, 0x2beddbd5
adc edx, 0
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
movsx eax, byte [0x100a2027]
mov dword [ebp - 0x50], eax
movsx ecx, word [0x100a20f0]
imul edx, ecx, 0x65
add edx, dword [0x100a2128]
mov dword [0x100a2128], edx
mov eax, 0x9518
mov word [0x100a2124], ax
mov dword [ebp - 0x988], 0
cmp dword [ebp - 0x54], 0
je 0x1003f51f
movsx ecx, byte [0x100a203b]
sub ecx, 0xf41a
mov dword [0x100a2120], ecx
mov dword [0x100a2128], 0x60
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
add edx, 0x35112f09
adc eax, 0
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], eax
movzx eax, byte [ebp - 3]
cdq
and eax, 0x6544303b
and edx, 0xb8cd5
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
movsx ecx, byte [str.y4The_server_is_requ]
movsx edx, word [0x100a2110]
xor ecx, edx
movsx eax, byte [str.y4The_server_is_requ]
imul eax, ecx
mov byte [str.y4The_server_is_requ], al
jmp 0x1003f56f
movsx ecx, word [ebp - 8]
test ecx, ecx
jne 0x1003f56f
movzx edx, byte [0x100a207b]
movsx eax, byte [0x100a203b]
add edx, eax
movzx ecx, byte [0x100a207b]
add ecx, edx
mov byte [0x100a207b], cl
movzx edx, byte [0x100a207a]
mov eax, dword [0x100a2104]
imul eax, edx
mov dword [0x100a2104], eax
mov ecx, dword [ebp - 0x38]
xor ecx, 0x2019
mov edx, dword [ebp - 0x34]
xor edx, 0
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x98c], ecx
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a211c], ax
mov dword [ebp - 0xdc], 0
jmp 0x1003f5a3
mov edx, dword [ebp - 0xdc]
add edx, 2
mov dword [ebp - 0xdc], edx
cmp dword [ebp - 0xdc], 0x17f
jge 0x1003f5c1
mov ax, word [0x100a20e0]
add ax, 1
mov word [0x100a20e0], ax
jmp 0x1003f594
mov dword [ebp - 0x3c], 0x32bc0798
mov ecx, 0xe801
mov word [ebp - 0xc], cx
movsx edx, word [ebp - 0x18]
add edx, dword [ebp - 0x44]
mov word [ebp - 0x18], dx
movzx eax, word [0x100a211c]
mov dword [ebp - 0x20], eax
movsx ecx, byte [ebp - 1]
mov edx, 4
imul eax, edx, 0x2c4
mov dword [eax + 0x100b35b8], ecx
imul ecx, dword [0x100a2120], 0x6ba685a7
mov edx, dword [ebp - 0x44]
sub edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [0x100a2114]
add eax, 0x91
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
movzx eax, byte [0x100a207a]
or eax, dword [ebp - 0x20]
mov byte [ebp - 1], al
mov ecx, dword [0x100a20d0]
sub ecx, 0xa6b4f7f9
mov dword [0x100a2104], ecx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
xor edx, dword [ebp - 0x38]
xor eax, dword [ebp - 0x34]
push eax
push edx
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call fcn.10073ef0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov byte [ebp - 2], 0x2e
mov byte [ebp - 3], 0xbb
xor eax, eax
mov byte [ebp - 0x62], al
lea ecx, [ebp - 0x62]
call fcn.10002c80
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x80]
movzx edx, byte [ecx + 0x13]
test edx, edx
je 0x1003f6a9
push 0x1010101
push 0x650151e3
push 0
push 0x13
mov eax, dword [ebp - 0x80]
push eax
call fcn.1003d770
mov ecx, dword [ebp - 0x80]
mov byte [ecx + 0x13], 0
push 0
push 0
push 0
push 0
mov edx, dword [ebp - 0x80]
push edx
push 0
push 0
call fcn.100015f0
call eax
mov dword [ebp - 0x74], eax
mov dword [0x100a2100], 0x69
cmp dword [0x100a20dc], 0
jne 0x1003f6e2
mov dword [ebp - 0x17c], 1
jmp 0x1003f6ec
mov dword [ebp - 0x17c], 0
mov eax, 0xa1
sub eax, dword [ebp - 0x17c]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [0x100a2114]
cdq
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [ebp - 0x990], edx
add eax, ecx
mov dword [0x100a2114], eax
mov eax, dword [ebp - 0x20]
add eax, 0x3b796d41
mov dword [ebp - 0x4c], eax
movsx ecx, word [ebp - 0x14]
add ecx, dword [0x100a2100]
cmp dword [0x100a2128], ecx
jne 0x1003f963
movzx edx, byte [0x100a207b]
cmp dword [ebp - 0x3c], edx
je 0x1003f756
mov dword [ebp - 0x180], 1
jmp 0x1003f760
mov dword [ebp - 0x180], 0
cmp dword [ebp - 0x3c], 0x5d
je 0x1003f772
mov dword [ebp - 0x184], 1
jmp 0x1003f77c
mov dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x180]
cmp eax, dword [ebp - 0x184]
jg 0x1003f7ac
movsx eax, word [0x100a20f0]
cdq
xor eax, dword [ebp - 0x38]
xor edx, dword [ebp - 0x34]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov ecx, dword [0x100a2c3c]
mov dword [ebp - 0x50], ecx
jmp 0x1003f83e
mov edx, dword [ebp - 0x44]
cmp dword [0x100a20d8], edx
je 0x1003f7c3
mov dword [ebp - 0x188], 1
jmp 0x1003f7cd
mov dword [ebp - 0x188], 0
movzx eax, byte [str.HeapSize]
mov ecx, dword [ebp - 0x188]
sub ecx, eax
je 0x1003f83e
movsx eax, word [ebp - 0x14]
not eax
cdq
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x4c], edx
movsx eax, byte [ebp - 2]
xor eax, 0x640f
movsx ecx, byte [ebp - 2]
add ecx, eax
mov byte [ebp - 2], cl
mov edx, dword [ebp - 0x20]
sub edx, 0xa2
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x948], edx
sub eax, ecx
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov dword [ebp - 0x20], ecx
movsx edx, byte [ebp - 2]
sub edx, 0xb8
mov word [0x100a2110], dx
movzx eax, word [0x100a211c]
mov ecx, dword [ebp - 0x20]
not ecx
xor eax, ecx
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x100a20d8]
add ecx, 0x62a9e4ee
movsx eax, byte [ebp - 1]
cdq
or ecx, eax
mov byte [str.y4The_server_is_requ], cl
mov edx, dword [0x100a20f4]
xor edx, dword [0x100a20d8]
mov eax, dword [0x100a20d8]
sub eax, edx
mov dword [0x100a20d8], eax
imul ecx, dword [ebp - 0x50], 0xccdb2791
movsx edx, byte [ebp - 1]
add edx, ecx
mov byte [ebp - 1], dl
mov eax, dword [ebp - 0x48]
sub eax, 1
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x44]
xor edx, edx
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
push esi
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x44], eax
mov ecx, dword [0x100a2100]
xor edx, edx
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add eax, 0xf2ea6d29
adc esi, 0x954a7
mov dword [ebp - 0x584], ecx
mov dword [ebp - 0x580], edx
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], esi
mov ecx, dword [ebp - 0x584]
cmp ecx, dword [ebp - 0x58c]
jne 0x1003f963
mov edx, dword [ebp - 0x580]
cmp edx, dword [ebp - 0x588]
jne 0x1003f963
mov ax, word [0x100a2c3c]
mov word [0x100a2118], ax
cmp dword [0x100a2120], 0
jne 0x1003f91e
mov dword [ebp - 0x18c], 1
jmp 0x1003f928
mov dword [ebp - 0x18c], 0
movsx ecx, word [ebp - 0x18]
add ecx, dword [ebp - 0x18c]
mov word [ebp - 0x18], cx
mov dx, word [0x100a2c3c]
mov word [ebp - 8], dx
jmp 0x1003f6c3
xor edx, edx
mov word [ebp - 0x1c], dx
mov al, byte [0x100a20f0]
mov byte [str.y4The_server_is_requ], al
movzx eax, byte [ebp - 4]
cdq
push 0x4e186
push 0x5bd5f2a4
push edx
push eax
call fcn.10073ef0
mov byte [str.y4The_server_is_requ], al
movzx ecx, byte [0x100a207b]
mov edx, dword [0x100a2100]
sub edx, ecx
jne 0x1003f9ab
mov dword [ebp - 0x190], 1
jmp 0x1003f9b5
mov dword [ebp - 0x190], 0
movsx eax, word [ebp - 0x10]
imul eax, eax, 0
cdq
mov ecx, dword [0x100a20f8]
sub ecx, dword [ebp - 0x40]
sub eax, ecx
not eax
movzx edx, word [0x100a2124]
not edx
sub edx, 0x4e82fd53
imul edx, dword [ebp - 0x190]
add eax, edx
mov dword [ebp - 0x40], eax
movsx eax, word [ebp - 8]
add eax, 0xca
mov dword [0x100a2100], eax
xor ecx, ecx
mov dword [0x100a2130], 8
mov dword [0x100a2134], ecx
movsx edx, word [ebp - 0x1c]
mov dword [ebp - 0x4c4], edx
cmp dword [ebp - 0x4c4], 0
je 0x1003fa1a
jmp 0x1003fa85
mov eax, dword [0x100a2100]
add eax, 1
mov dword [0x100a2100], eax
movsx ecx, word [0x100a20c8]
mov edx, dword [ebp - 0x40]
sub edx, ecx
movsx eax, word [ebp - 0x14]
not eax
movzx ecx, byte [0x100a207b]
add eax, ecx
imul edx, eax
mov dword [ebp - 0x40], edx
movzx edx, word [0x100a2118]
movsx eax, byte [ebp - 2]
add edx, eax
movzx ecx, word [0x100a2118]
sub ecx, edx
mov word [0x100a2118], cx
mov edx, dword [0x100a2128]
sub edx, 0x5d
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x9bc], ecx
add eax, 0xdf
mov byte [ebp - 1], al
mov edx, dword [ebp - 0x198]
xor edx, dword [ebp - 0x194]
imul eax, dword [ebp - 0x194], 0x1c2
imul edx, eax
cmp edx, dword [ebp - 0x198]
je 0x10040b5e
cmp dword [0x100a20fc], 0xfffff7e1
jl 0x1003fad0
jg 0x1003fac4
cmp dword [0x100a20f8], 0x907b3619
jbe 0x1003fad0
mov dword [ebp - 0x19c], 1
jmp 0x1003fada
mov dword [ebp - 0x19c], 0
mov ecx, dword [ebp - 0x48]
not ecx
cmp ecx, dword [ebp - 0x19c]
jne 0x1003fe8c
xor edx, edx
mov dword [ebp - 0x28], 4
mov dword [ebp - 0x24], edx
movzx eax, word [ebp - 0xc]
add eax, 0x55ab1d3
xor ecx, ecx
mov edx, dword [0x100a2108]
mov esi, dword [0x100a210c]
sub edx, eax
sbb esi, ecx
mov dword [0x100a2108], edx
mov dword [0x100a210c], esi
movzx eax, byte [ebp - 3]
add eax, dword [ebp - 0x4c]
and eax, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], eax
movzx ecx, word [0x100a2118]
test ecx, ecx
je 0x1003fb45
movzx edx, word [0x100a20e0]
mov dword [ebp - 0x1a0], edx
jmp 0x1003fb4e
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1a0], eax
mov ecx, dword [ebp - 0x1a0]
mov dword [0x100a20e4], ecx
movzx edx, word [0x100a2138]
imul eax, edx, 0xa2c7208f
mov byte [0x100a207a], al
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x3f0], ecx
mov dword [ebp - 0x3ec], edx
cmp dword [ebp - 0x3ec], 0
ja 0x1003fe87
jb 0x1003fb9a
cmp dword [ebp - 0x3f0], 4
ja 0x1003fe87
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x9b8], eax
mov ecx, dword [ebp - 0x9b8]
jmp dword [ecx*4 + 0x10045ed4]
jmp 0x1003ff60
cmp dword [0x100a20f4], 0
je 0x1003ff60
movsx eax, byte [ebp - 1]
cdq
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0x818], edx
sub ecx, eax
movsx eax, word [0x100a2110]
not eax
movzx edx, byte [0x100a207b]
sub eax, edx
cdq
add ecx, eax
mov word [0x100a211c], cx
mov eax, dword [ebp - 0x5c]
or eax, dword [ebp - 0x58]
jne 0x1003fee2
mov dword [ebp - 0x1b8], 1
jmp 0x1003feec
mov dword [ebp - 0x1b8], 0
cmp dword [0x100a20d8], 0
jne 0x1003ff01
mov dword [ebp - 0x1bc], 1
jmp 0x1003ff0b
mov dword [ebp - 0x1bc], 0
movzx ecx, word [0x100a2138]
and ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x1b8]
movsx eax, word [ebp - 0x18]
or eax, dword [ebp - 0x1bc]
not eax
cdq
mov esi, eax
movsx eax, byte [0x100a2027]
cdq
mov edx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x81c], edi
add edx, eax
add esi, edx
and ecx, esi
mov byte [0x100a203b], cl
movzx eax, word [0x100a2138]
mov ecx, dword [0x100a2104]
imul ecx, eax
mov dword [0x100a2104], ecx
mov edx, 0xf48
mov word [0x100a211c], dx
mov eax, dword [ebp - 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
movzx eax, word [0x100a2138]
cdq
mov ecx, dword [ebp - 0x5c]
add ecx, 0x1a
mov esi, dword [ebp - 0x58]
adc esi, 0
mov dword [ebp - 0x5ac], eax
mov dword [ebp - 0x5a8], edx
mov dword [ebp - 0x5b4], ecx
mov dword [ebp - 0x5b0], esi
mov edx, dword [ebp - 0x5ac]
cmp edx, dword [ebp - 0x5b4]
jne 0x10040050
mov eax, dword [ebp - 0x5a8]
cmp eax, dword [ebp - 0x5b0]
jne 0x10040050
movzx ecx, word [0x100a2138]
movsx edx, byte [ebp - 2]
add ecx, edx
cmp ecx, 1
jne 0x10040050
movsx eax, word [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov dword [0x100a2120], eax
jmp 0x1003ff60
movsx eax, word [0x100a2110]
mov ecx, dword [ebp - 0x3c]
not ecx
cmp eax, ecx
jle 0x1004006c
mov dword [ebp - 0x1c0], 1
jmp 0x10040076
mov dword [ebp - 0x1c0], 0
mov edx, dword [ebp - 0x1c0]
not edx
test edx, edx
je 0x100404f9
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x50]
xor esi, esi
mov dword [ebp - 0x5bc], eax
mov dword [ebp - 0x5b8], ecx
mov dword [ebp - 0x5c4], edx
mov dword [ebp - 0x5c0], esi
mov eax, dword [ebp - 0x5bc]
cmp eax, dword [ebp - 0x5c4]
jne 0x100400c5
mov ecx, dword [ebp - 0x5b8]
cmp ecx, dword [ebp - 0x5c0]
je 0x100400d1
mov dword [ebp - 0x1c4], 1
jmp 0x100400db
mov dword [ebp - 0x1c4], 0
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x5cc], edx
mov dword [ebp - 0x5c8], eax
cmp dword [ebp - 0x5cc], 0x26
jne 0x100400ff
cmp dword [ebp - 0x5c8], 0
je 0x1004010b
mov dword [ebp - 0x1c8], 1
jmp 0x10040115
mov dword [ebp - 0x1c8], 0
mov ecx, dword [ebp - 0x1c4]
cmp ecx, dword [ebp - 0x1c8]
jl 0x100404f4
mov dword [ebp - 0xc0], 0x54
movzx eax, byte [str.HeapSize]
cdq
push 0xa1284
push 0x807a1555
push edx
push eax
call fcn.10073ef0
mov word [0x100a20c8], ax
movzx edx, byte [ebp - 3]
sub edx, dword [0x100a2104]
movzx eax, byte [ebp - 3]
imul eax, edx
mov byte [ebp - 3], al
movzx ecx, word [ebp - 0xc]
test ecx, ecx
je 0x10040178
movzx edx, byte [ebp - 4]
mov dword [ebp - 0x1cc], edx
jmp 0x10040182
movsx eax, word [ebp - 0x18]
mov dword [ebp - 0x1cc], eax
mov ecx, dword [ebp - 0x1cc]
mov dword [0x100a20dc], ecx
mov edx, dword [ebp - 0x3c]
add edx, 0xa648
mov byte [ebp - 3], dl
movsx eax, word [0x100a2110]
cmp eax, dword [0x100a20f4]
je 0x100401b5
mov dword [ebp - 0x1d0], 1
jmp 0x100401bf
mov dword [ebp - 0x1d0], 0
movsx ecx, word [0x100a2110]
cmp ecx, 0x4a
je 0x100401d7
mov dword [ebp - 0x1d4], 1
jmp 0x100401e1
mov dword [ebp - 0x1d4], 0
mov edx, dword [ebp - 0x1d0]
cmp edx, dword [ebp - 0x1d4]
jne 0x10040291
movsx eax, byte [ebp - 2]
add eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
movsx edx, byte [ebp - 2]
imul eax, edx, 0x64
mov dword [0x100a20dc], eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x824], edx
mov eax, dword [ebp - 0x5c]
sub eax, ecx
mov ecx, dword [0x100a20dc]
not ecx
movsx edx, word [ebp - 0x14]
xor ecx, edx
sub eax, ecx
mov word [ebp - 0x14], ax
movsx eax, word [ebp - 0x10]
test eax, eax
je 0x1004024e
movzx eax, byte [ebp - 4]
cdq
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], edx
jmp 0x10040266
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x3f8], ecx
mov dword [ebp - 0x3f4], edx
mov ax, word [ebp - 0x3f8]
mov word [0x100a2124], ax
mov cx, word [ebp - 0x40]
mov word [0x100a20e0], cx
mov dx, word [0x100a2128]
mov word [0x100a2124], dx
jmp 0x100404d5
mov eax, dword [ebp - 0x3c]
cdq
mov dword [ebp - 0x5d4], eax
mov dword [ebp - 0x5d0], edx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x5d0]
jb 0x10040336
ja 0x100402bd
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x5d4]
jbe 0x10040336
mov ecx, dword [ebp - 0x20]
xor esi, esi
sub ecx, 0x326fe364
sbb esi, 0x8a3d5
mov eax, dword [0x100a2104]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [0x100a2104], eax
movzx edx, byte [0x100a207b]
add edx, 0x79a0dc4d
mov dword [ebp - 0x44], edx
movsx eax, word [ebp - 0x14]
test eax, eax
je 0x1004030d
movsx eax, word [ebp - 0x1c]
cdq
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], edx
jmp 0x1004031f
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x3fc], edx
mov ax, word [ebp - 0x400]
mov word [ebp - 0xc], ax
mov byte [0x100a2027], 0xea
jmp 0x100404d5
movsx ecx, word [ebp - 0x1c]
test ecx, ecx
jne 0x1004034a
mov dword [ebp - 0x1d8], 1
jmp 0x10040354
mov dword [ebp - 0x1d8], 0
cmp dword [ebp - 0x20], 0
jne 0x10040386
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x5dc], edx
mov dword [ebp - 0x5d8], eax
mov ecx, dword [ebp - 0x5dc]
or ecx, dword [ebp - 0x5d8]
jne 0x10040386
mov dword [ebp - 0x1dc], 0
jmp 0x10040390
mov dword [ebp - 0x1dc], 1
mov edx, dword [ebp - 0x1d8]
cmp edx, dword [ebp - 0x1dc]
jge 0x1004045b
mov eax, dword [0x100a20ec]
mov ecx, dword [ebp - 0x5c]
sub ecx, dword [0x100a20e8]
mov edx, dword [ebp - 0x58]
sbb edx, eax
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x100403d1
mov ecx, dword [0x100a2128]
mov dword [ebp - 0x1e0], ecx
jmp 0x100403da
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x1e0], edx
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0x40], eax
cmp dword [0x100a2120], 0
jne 0x100403f8
mov dword [ebp - 0x1e4], 1
jmp 0x10040402
mov dword [ebp - 0x1e4], 0
movsx eax, word [0x100a20f0]
sub eax, dword [ebp - 0x1e4]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x828], eax
sub ecx, edx
mov edx, dword [ebp - 0x20]
sub edx, ecx
mov dword [ebp - 0x20], edx
mov eax, 0xad03
mov word [0x100a2118], ax
mov ecx, dword [0x100a2100]
xor edx, edx
mov eax, 8
imul eax, eax, 0x94e9
mov dword [eax + 0x1016eca8], ecx
mov dword [eax + 0x1016ecac], edx
jmp 0x100404d5
cmp dword [0x100a20dc], 0
je 0x100404d5
movsx eax, byte [0x100a2027]
cdq
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x5e4], ecx
mov dword [ebp - 0x5e0], esi
mov edx, dword [ebp - 0x5e4]
or edx, dword [ebp - 0x5e0]
jne 0x1004049c
mov byte [ebp - 0x60], 1
jmp 0x100404a0
mov byte [ebp - 0x60], 0
mov al, byte [ebp - 0x60]
mov byte [str.y4The_server_is_requ], al
mov ecx, dword [ebp - 0x50]
shr ecx, 6
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov cl, 3
call fcn.10073f30
mov word [ebp - 0x1c], ax
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov cl, 7
call fcn.10074000
mov word [0x100a2138], ax
mov edx, dword [ebp - 0xc0]
add edx, 1
mov dword [ebp - 0xc0], edx
cmp dword [ebp - 0xc0], 0x256e
jl 0x1004019a
jmp 0x1004059a
imul eax, dword [ebp - 0x20], 0x2ff5
mov word [ebp - 0x14], ax
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
push 0
push 0x54b0
push edx
push ecx
call fcn.10073ef0
mov dword [0x100a2100], eax
mov eax, dword [ebp - 0x3c]
cdq
push 0xe1901
push 0x64a559a4
push edx
push eax
call fcn.10073ef0
mov word [ebp - 0xc], ax
mov eax, dword [ebp - 0x5c]
add eax, 0x9a
mov ecx, dword [ebp - 0x58]
adc ecx, 0
mov dword [0x100a20f8], eax
mov dword [0x100a20fc], ecx
movsx edx, word [ebp - 8]
movsx eax, byte [str.y4The_server_is_requ]
imul edx, eax
movsx ecx, word [ebp - 8]
add ecx, edx
mov word [ebp - 8], cx
movsx eax, word [ebp - 0x1c]
or eax, dword [0x100a20f4]
cdq
xor ecx, ecx
mov esi, dword [0x100a2148]
mov edi, dword [0x100a214c]
add esi, dword [0x100a20d8]
adc edi, ecx
push edi
push esi
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x74], 0
jne 0x10040b5e
xor edx, edx
mov dword [0x100a20f8], 0x7b005eca
mov dword [0x100a20fc], edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x5ec], eax
mov dword [ebp - 0x5e8], ecx
mov edx, dword [ebp - 0x5ec]
or edx, dword [ebp - 0x5e8]
jne 0x100405e2
mov dword [ebp - 0x1e8], 1
jmp 0x100405ec
mov dword [ebp - 0x1e8], 0
movsx eax, word [ebp - 0x10]
xor eax, dword [ebp - 0x1e8]
movsx ecx, word [ebp - 0x10]
not ecx
mov edx, dword [0x100a2114]
imul edx, ecx
sub eax, edx
mov word [0x100a20e0], ax
movsx eax, word [ebp - 0x18]
add eax, dword [ebp - 0x4c]
movsx ecx, word [ebp - 0x18]
sub ecx, eax
mov word [ebp - 0x18], cx
mov edx, dword [0x100a2104]
mov eax, 2
imul ecx, eax, 0xad
mov word [ecx + 0x102b7550], dx
cmp dword [ebp - 0x48], 0
je 0x10040647
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x1ec], edx
jmp 0x10040651
movzx eax, byte [ebp - 4]
mov dword [ebp - 0x1ec], eax
mov ecx, dword [ebp - 0x1ec]
mov dword [0x100a20f4], ecx
mov dword [0x100a20f4], 0xefb8ae5f
xor edx, edx
mov dword [0x100a20d0], 0x81d5298f
mov dword [0x100a20d4], edx
mov eax, dword [0x100a2104]
sub eax, 0xf7
mov word [ebp - 0x10], ax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x82c], edx
sub ecx, 0x76b9
mov dword [0x100a2100], ecx
mov eax, dword [0x100a20dc]
mov ecx, dword [ebp - 0x48]
lea edx, [ecx + eax + 0x1345]
mov dword [ebp - 0x48], edx
movsx eax, byte [0x100a2027]
test eax, eax
je 0x100406d1
movsx ecx, word [0x100a20c8]
mov dword [ebp - 0x1f0], ecx
jmp 0x100406de
movsx edx, byte [0x100a203b]
mov dword [ebp - 0x1f0], edx
mov al, byte [ebp - 0x1f0]
mov byte [ebp - 1], al
movsx ecx, byte [str.y4The_server_is_requ]
add ecx, dword [ebp - 0x54]
mov byte [str.y4The_server_is_requ], cl
movsx eax, word [ebp - 0x14]
add eax, 1
cdq
mov dword [ebp - 0x5f4], eax
mov dword [ebp - 0x5f0], edx
mov edx, dword [0x100a20d0]
cmp edx, dword [ebp - 0x5f4]
jne 0x100409c5
mov eax, dword [0x100a20d4]
cmp eax, dword [ebp - 0x5f0]
jne 0x100409c5
call dword [sym.imp.USER32.dll_GetCursor]
mov dword [ebp - 0x4c8], eax
mov dword [ebp - 0x4cc], 0
cmp dword [ebp - 0x4c8], 0
je 0x10040760
mov ecx, dword [ebp - 0x4cc]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov dword [ebp - 0x830], eax
movzx edx, byte [0x100a207b]
test edx, edx
je 0x100407d5
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
not eax
not ecx
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], ecx
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [0x100a20e8], edx
mov dword [0x100a20ec], eax
mov cx, word [0x100a2c3c]
mov word [0x100a2124], cx
movsx edx, word [ebp - 0x14]
test edx, edx
jne 0x100407b5
mov dword [ebp - 0x1f4], 1
jmp 0x100407bf
mov dword [ebp - 0x1f4], 0
movzx eax, byte [0x100a207b]
imul eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x54], eax
jmp 0x1004093f
cmp dword [0x100a2114], 0
je 0x10040859
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
sub ecx, 0x37
sbb edx, 0
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
add eax, dword [0x100a2140]
adc ecx, dword [0x100a2144]
push ecx
push eax
mov edx, dword [0x100a2144]
push edx
mov eax, dword [0x100a2140]
push eax
call fcn.10073ef0
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x834], edx
sub ecx, 0x3730
mov eax, dword [ebp - 0x20]
sub eax, ecx
mov dword [ebp - 0x20], eax
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a2148], ecx
mov dword [0x100a214c], edx
jmp 0x1004093f
cmp dword [ebp - 0x20], 0
je 0x10040890
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x5fc], eax
mov dword [ebp - 0x5f8], ecx
mov edx, dword [ebp - 0x5fc]
or edx, dword [ebp - 0x5f8]
je 0x10040890
mov dword [ebp - 0x1fc], 1
jmp 0x1004089a
mov dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x604], eax
mov dword [ebp - 0x600], ecx
mov edx, dword [ebp - 0x604]
or edx, dword [ebp - 0x600]
jne 0x100408c6
mov dword [ebp - 0x1f8], 1
jmp 0x100408d0
mov dword [ebp - 0x1f8], 0
movzx eax, word [0x100a2118]
imul eax, dword [ebp - 0x1f8]
cmp dword [ebp - 0x1fc], eax
jge 0x1004093f
mov byte [ebp - 1], 0x7d
movzx ecx, byte [str.HeapSize]
mov edx, dword [ebp - 0x54]
imul edx, ecx
mov eax, dword [ebp - 0x54]
imul eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0x838], edx
add ecx, 0x3220
mov dword [0x100a20d8], ecx
mov al, byte [0x100a2c3c]
mov byte [ebp - 3], al
movzx eax, word [ebp - 0xc]
cdq
mov ecx, 8
shl ecx, 0
mov dword [ecx + 0x102b7708], eax
mov dword [ecx + 0x102b770c], edx
cmp dword [0x100a20dc], 1
jne 0x100409c5
mov dword [ebp - 0xc4], 0
jmp 0x10040963
mov edx, dword [ebp - 0xc4]
add edx, 2
mov dword [ebp - 0xc4], edx
cmp dword [ebp - 0xc4], 0x1a5
jge 0x1004097a
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
jmp 0x10040954
jmp 0x100409c5
xor eax, eax
mov dword [0x100a20d0], 0x81d5298f
mov dword [0x100a20d4], eax
imul ecx, dword [0x100a2120], 0xbf
not ecx
mov eax, dword [0x100a2120]
imul eax, ecx
cdq
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
movsx edx, byte [ebp - 2]
test edx, edx
je 0x10040a0b
mov eax, dword [0x100a2128]
mov dword [ebp - 0x200], eax
jmp 0x10040a18
movsx ecx, byte [0x100a2027]
mov dword [ebp - 0x200], ecx
mov dx, word [ebp - 0x200]
mov word [ebp - 0x10], dx
mov eax, dword [0x100a20f4]
mov dword [ebp - 0x50], eax
movsx ecx, word [0x100a20c8]
movzx edx, byte [0x100a207a]
xor ecx, edx
movsx eax, word [0x100a20c8]
sub eax, ecx
mov word [0x100a20c8], ax
cmp dword [0x100a20d8], 0
jne 0x10040a5f
mov dword [ebp - 0x204], 1
jmp 0x10040a69
mov dword [ebp - 0x204], 0
mov ecx, dword [0x100a210c]
mov edx, dword [0x100a20d0]
sub edx, dword [0x100a2108]
mov eax, dword [0x100a20d4]
sbb eax, ecx
mov dword [ebp - 0x60c], edx
mov dword [ebp - 0x608], eax
mov ecx, dword [ebp - 0x60c]
or ecx, dword [ebp - 0x608]
jne 0x10040aa8
mov dword [ebp - 0x208], 1
jmp 0x10040ab2
mov dword [ebp - 0x208], 0
imul edx, dword [ebp - 0x204], 0x97136b32
xor edx, dword [ebp - 0x208]
jne 0x10040ad0
mov dword [ebp - 0x20c], 1
jmp 0x10040ada
mov dword [ebp - 0x20c], 0
movzx eax, byte [0x100a207b]
imul eax, dword [0x100a20dc]
add eax, dword [ebp - 0x20c]
not eax
mov word [0x100a2118], ax
movzx ecx, byte [0x100a207b]
xor ecx, dword [ebp - 0x20]
xor ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov eax, dword [0x100a2114]
cdq
push edx
push eax
mov edx, dword [ebp - 0x58]
push edx
mov eax, dword [ebp - 0x5c]
push eax
call fcn.10073ef0
mov ecx, dword [ebp - 0x5c]
sub ecx, eax
mov eax, dword [ebp - 0x58]
sbb eax, edx
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], eax
movzx ecx, byte [0x100a207a]
imul edx, ecx, 0x5b
movsx eax, byte [0x100a203b]
add eax, edx
mov byte [0x100a203b], al
movsx ecx, word [ebp - 0x10]
movzx edx, byte [ebp - 3]
add ecx, edx
movsx eax, word [ebp - 0x10]
add eax, ecx
mov word [ebp - 0x10], ax
xor eax, eax
jmp 0x10045eba
mov cx, word [ebp - 0x20]
mov word [0x100a20e0], cx
mov dx, word [0x100a20f8]
mov word [0x100a2118], dx
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
mov edx, dword [ebp - 0x5c]
not edx
mov esi, dword [ebp - 0x58]
not esi
push esi
push edx
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
mov eax, dword [ebp + 0xc]
push eax
push 0
push 0
call fcn.10001530
call eax
mov dword [ebp - 0xec], eax
push 0
push 0x84000000
push 0
push 0
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x74]
push edx
push 0
push 0
call fcn.10001680
call eax
mov dword [ebp - 0x2d4], eax
cmp dword [0x100a2114], 0
je 0x10040d48
mov byte [0x100a207a], 0x42
movsx eax, word [0x100a2110]
mov ecx, dword [ebp - 0x50]
sub ecx, eax
xor edx, edx
sub ecx, dword [ebp - 0x38]
sbb edx, dword [ebp - 0x34]
mov dword [ebp - 0x614], ecx
mov dword [ebp - 0x610], edx
mov eax, dword [ebp - 0x614]
or eax, dword [ebp - 0x610]
jne 0x10040c2e
mov dword [ebp - 0x218], 1
jmp 0x10040c38
mov dword [ebp - 0x218], 0
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x61c], ecx
mov dword [ebp - 0x618], edx
mov eax, dword [ebp - 0x61c]
or eax, dword [ebp - 0x618]
jne 0x10040c6a
mov dword [ebp - 0x210], 1
jmp 0x10040c74
mov dword [ebp - 0x210], 0
mov ecx, dword [ebp - 0x48]
xor edx, edx
add ecx, dword [0x100a2140]
adc edx, dword [0x100a2144]
mov dword [ebp - 0x624], ecx
mov dword [ebp - 0x620], edx
mov eax, dword [ebp - 0x624]
or eax, dword [ebp - 0x620]
jne 0x10040cab
mov dword [ebp - 0x214], 1
jmp 0x10040cb5
mov dword [ebp - 0x214], 0
movsx ecx, word [ebp - 0x18]
xor ecx, dword [ebp - 0x210]
imul ecx, dword [ebp - 0x214]
imul ecx, dword [ebp - 0x218]
mov dword [ebp - 0x50], ecx
movsx edx, byte [0x100a203b]
mov eax, dword [0x100a20d8]
sub eax, edx
add eax, dword [0x100a20d8]
mov dword [0x100a20d8], eax
movzx eax, byte [0x100a207a]
cdq
add eax, 0x72483f88
adc edx, 0xb2699
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
cmp dword [0x100a20d8], 0
je 0x10040d25
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x408], ecx
mov dword [ebp - 0x404], edx
jmp 0x10040d36
movsx eax, byte [ebp - 2]
cdq
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], edx
mov ax, word [ebp - 0x408]
mov word [0x100a20f0], ax
jmp 0x10040e2d
movsx ecx, word [0x100a2110]
not ecx
test ecx, ecx
je 0x10040e2d
mov dl, byte [0x100a2c3c]
mov byte [ebp - 4], dl
mov ecx, dword [ebp - 0x40]
xor esi, esi
mov eax, dword [ebp - 0x3c]
cdq
mov edi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
add edi, eax
adc ebx, edx
add ecx, edi
adc esi, ebx
mov edx, dword [ebp - 0x44]
add edx, dword [ebp - 0x48]
movsx eax, word [ebp - 8]
movsx edi, word [ebp - 8]
add eax, edi
imul edx, eax
xor eax, eax
sub ecx, edx
sbb esi, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], esi
movsx ecx, word [0x100a20f0]
sub ecx, dword [0x100a20e4]
xor edx, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], edx
movsx eax, byte [0x100a2027]
sub eax, dword [0x100a20d8]
mov byte [0x100a2027], al
mov ecx, dword [ebp - 0x5c]
sub ecx, 0x2296a475
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x4c]
not edx
movsx eax, byte [str.y4The_server_is_requ]
sub edx, eax
jne 0x10040de7
mov dword [ebp - 0x21c], 1
jmp 0x10040df1
mov dword [ebp - 0x21c], 0
movsx ecx, word [ebp - 0x14]
mov edx, dword [ebp - 0x21c]
lea eax, [edx + ecx + 0xa8e2]
test eax, eax
jne 0x10040e12
mov dword [ebp - 0x220], 1
jmp 0x10040e1c
mov dword [ebp - 0x220], 0
imul ecx, dword [ebp - 0x220], 0x70b47ecb
mov word [0x100a20f0], cx
cmp dword [ebp - 0x2d4], 0
jne 0x1004174f
mov dword [ebp - 0x40], 0xb2
movsx edx, word [ebp - 0x14]
add edx, 0x312dd15b
mov word [ebp - 0x14], dx
mov dword [0x100a2120], 0x407fb416
movsx eax, byte [0x100a203b]
cdq
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
xor eax, eax
mov dword [0x100a2130], 0x66
mov dword [0x100a2134], eax
mov cx, word [0x100a2c3c]
mov word [ebp - 0x14], cx
movzx edx, word [0x100a20e0]
movsx eax, word [ebp - 0x1c]
xor edx, eax
and edx, dword [0x100a2128]
xor edx, 0x61ec9af6
mov dword [0x100a2114], edx
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov eax, dword [ebp - 0x40]
add eax, 1
xor esi, esi
mov dword [ebp - 0x62c], ecx
mov dword [ebp - 0x628], edx
mov dword [ebp - 0x634], eax
mov dword [ebp - 0x630], esi
mov ecx, dword [ebp - 0x62c]
cmp ecx, dword [ebp - 0x634]
jne 0x100410a6
mov edx, dword [ebp - 0x628]
cmp edx, dword [ebp - 0x630]
jne 0x100410a6
movzx eax, word [0x100a2118]
imul ecx, eax, 0xbc
mov dword [0x100a2100], ecx
movsx edx, word [ebp - 8]
sub edx, 0x3085
mov dword [0x100a2114], edx
xor eax, eax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
add ecx, dword [ebp - 0x4c]
adc edx, eax
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
movzx eax, word [0x100a2124]
imul eax, dword [0x100a2104]
mov word [0x100a2124], ax
xor ecx, ecx
mov dword [0x100a20d0], 0x1c9d8db1
mov dword [0x100a20d4], ecx
movzx edx, word [0x100a2124]
cmp edx, 1
jne 0x100410a6
movzx eax, byte [ebp - 3]
test eax, eax
je 0x10040ff9
mov eax, dword [0x100a2104]
cdq
add eax, dword [0x100a20f8]
adc edx, dword [0x100a20fc]
mov ecx, dword [0x100a20f8]
sub ecx, eax
mov eax, dword [0x100a20fc]
sbb eax, edx
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], eax
movsx ecx, word [ebp - 0x10]
test ecx, ecx
je 0x10040fc6
movzx edx, word [0x100a2124]
mov dword [ebp - 0x224], edx
jmp 0x10040fd1
mov eax, dword [0x100a2100]
mov dword [ebp - 0x224], eax
mov cx, word [ebp - 0x224]
mov word [0x100a211c], cx
mov edx, 0xffff93a1
mov word [0x100a20c8], dx
mov ax, word [0x100a2c3c]
mov word [0x100a20c8], ax
jmp 0x1004101d
movzx ecx, byte [ebp - 3]
xor ecx, 0x24
mov byte [ebp - 4], cl
movzx eax, byte [ebp - 4]
add eax, 0xc661
cdq
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov edx, dword [0x100a20f4]
mov word [ebp - 0xc], dx
jmp 0x100410a6
xor edx, edx
mov dword [0x100a2130], 0x66
mov dword [0x100a2134], edx
movsx eax, word [ebp - 0x14]
imul ecx, eax, 0xc67c
mov word [ebp - 8], cx
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x83c], ecx
add eax, edx
mov dword [ebp - 0x4c], eax
movzx eax, word [0x100a211c]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], esi
mov edx, dword [ebp - 0xec]
push edx
push 0
push 0
call fcn.100016e0
call eax
mov eax, dword [ebp - 0x74]
push eax
push 0
push 0
call fcn.10001380
call eax
mov ecx, 0xfd240
mov dword [0x100a2130], 0xab70964f
mov dword [0x100a2134], ecx
movsx edx, byte [ebp - 2]
sub edx, 0x69
movsx eax, byte [ebp - 1]
imul eax, edx
mov byte [ebp - 1], al
movsx ecx, word [ebp - 0x10]
movzx edx, byte [ebp - 4]
imul ecx, edx
movsx eax, word [ebp - 0x10]
xor eax, ecx
mov word [ebp - 0x10], ax
movsx eax, byte [0x100a2027]
cdq
add eax, 0xfefb62e0
mov word [0x100a211c], ax
mov ecx, dword [0x100a2104]
mov dword [ebp - 0x4c], ecx
movzx edx, byte [ebp - 4]
mov eax, dword [ebp - 0x20]
sub eax, edx
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov eax, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add eax, 1
adc esi, 0
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x638], edx
mov dword [ebp - 0x644], eax
mov dword [ebp - 0x640], esi
mov ecx, dword [ebp - 0x63c]
cmp ecx, dword [ebp - 0x644]
jne 0x1004162f
mov edx, dword [ebp - 0x638]
cmp edx, dword [ebp - 0x640]
jne 0x1004162f
mov eax, dword [ebp - 0x54]
xor ecx, ecx
mov dword [ebp - 0x64c], eax
mov dword [ebp - 0x648], ecx
mov edx, dword [ebp - 0x648]
cmp edx, dword [0x100a20d4]
jl 0x10041289
jg 0x10041204
mov eax, dword [ebp - 0x64c]
cmp eax, dword [0x100a20d0]
jb 0x10041289
mov ecx, 2
imul edx, ecx, 0xa3
mov ax, word [ebp - 0x1c]
mov word [edx + 0x102b7550], ax
mov ecx, dword [0x100a2120]
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x20]
xor eax, eax
mov ecx, dword [ebp - 0x24]
add edx, dword [ebp - 0x28]
adc eax, ecx
mov dword [ebp - 0x654], edx
mov dword [ebp - 0x650], eax
mov edx, dword [ebp - 0x654]
or edx, dword [ebp - 0x650]
jne 0x10041255
mov eax, 1
mov word [ebp - 0x6c], ax
jmp 0x1004125b
xor ecx, ecx
mov word [ebp - 0x6c], cx
mov dx, word [ebp - 0x6c]
mov word [ebp - 8], dx
mov al, byte [0x100a2c3c]
mov byte [0x100a203b], al
mov ecx, dword [ebp - 0x44]
xor edx, edx
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x5c]
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x44], eax
jmp 0x100413b5
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x1004133b
xor edx, edx
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x2c], edx
mov eax, dword [0x100a2c3c]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov edx, 1
imul eax, edx, 0x25
movzx eax, byte [eax + 0x100b3380]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
mov edx, dword [0x100a20d8]
sub edx, 0xb0
xor eax, eax
mov dword [0x100a2150], edx
mov dword [0x100a2154], eax
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x65c], ecx
mov dword [ebp - 0x658], edx
mov eax, dword [ebp - 0x65c]
or eax, dword [ebp - 0x658]
je 0x10041313
movsx ecx, word [ebp - 8]
mov dword [ebp - 0x22c], ecx
jmp 0x1004131f
mov edx, dword [0x100a2128]
mov dword [ebp - 0x22c], edx
mov eax, dword [ebp - 0x22c]
mov dword [0x100a2104], eax
movsx cx, byte [0x100a203b]
mov word [0x100a2124], cx
jmp 0x100413b5
movzx edx, word [0x100a2118]
not edx
cmp dword [ebp - 0x48], edx
jbe 0x100413b5
mov eax, dword [0x100a20dc]
sub eax, 0x251e096b
mov dword [0x100a2128], eax
movzx ecx, byte [0x100a207b]
imul edx, ecx, 0x2ccc
mov word [0x100a211c], dx
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x50]
mov word [0x100a20f0], ax
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x40]
mov word [ebp - 8], cx
movsx edx, word [ebp - 0x10]
sar edx, 1
mov byte [ebp - 3], dl
mov eax, dword [0x100a20f8]
or eax, dword [0x100a20fc]
je 0x100413a3
mov ecx, dword [ebp - 0x54]
mov dword [ebp - 0x230], ecx
jmp 0x100413ac
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x230], edx
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x40], eax
movsx ecx, word [ebp - 0x18]
add ecx, dword [0x100a2114]
mov word [ebp - 0x18], cx
mov edx, 2
imul eax, edx, 0xafe
mov cx, word [ebp - 0x4c]
mov word [eax + 0x100a2c40], cx
movsx eax, byte [0x100a203b]
cdq
sub eax, 0x1077157d
sbb edx, 0xc229b
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
movsx edx, word [0x100a2110]
imul eax, edx, 0xbae902c4
movzx ecx, word [ebp - 0xc]
imul ecx, eax
mov word [ebp - 0xc], cx
movzx edx, byte [ebp - 4]
movsx eax, byte [ebp - 1]
movsx ecx, byte [ebp - 1]
add eax, ecx
add edx, eax
mov word [ebp - 0x1c], dx
movzx edx, byte [str.HeapSize]
cmp edx, 1
jne 0x1004162f
movsx eax, word [ebp - 0x18]
cmp eax, dword [ebp - 0x44]
jne 0x10041515
mov ecx, 1
imul edx, ecx, 0x1c
movzx eax, byte [edx + 0x102b76dc]
movsx ecx, word [0x100a2110]
xor ecx, eax
mov word [0x100a2110], cx
cmp dword [0x100a20e4], 0
jne 0x1004146f
mov dword [ebp - 0x234], 1
jmp 0x10041479
mov dword [ebp - 0x234], 0
movzx edx, word [0x100a2138]
not edx
add edx, dword [ebp - 0x48]
movsx eax, word [0x100a20f0]
mov ecx, dword [ebp - 0x234]
sub ecx, eax
mov eax, dword [0x100a20f4]
not eax
add eax, 0xb143
imul ecx, eax
imul edx, ecx
not edx
mov word [0x100a2138], dx
movzx eax, byte [ebp - 4]
cdq
mov ecx, eax
mov esi, edx
mov edx, dword [0x100a214c]
add ecx, dword [0x100a2148]
adc esi, edx
movzx eax, byte [ebp - 4]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 4], al
movzx eax, word [ebp - 0xc]
imul ecx, eax, 0xc8
mov byte [ebp - 4], cl
mov edx, 8
imul eax, edx, 0x1aff
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
sub ecx, dword [eax + 0x102e3ad8]
sbb edx, dword [eax + 0x102e3adc]
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], edx
jmp 0x10041572
mov eax, 1
mov word [ebp - 8], ax
movsx ecx, byte [0x100a2027]
xor ecx, 0x7932a468
movsx edx, byte [str.y4The_server_is_requ]
imul edx, dword [ebp - 0x3c]
or ecx, edx
jne 0x10041546
mov dword [ebp - 0x238], 1
jmp 0x10041550
mov dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x238]
not eax
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
mov eax, dword [ebp - 0x3c]
cdq
sub eax, 0x3827408c
mov byte [0x100a207b], al
jmp 0x1004162f
mov ecx, 0xfd240
mov dword [0x100a2130], 0xab70964f
mov dword [0x100a2134], ecx
movsx eax, word [ebp - 8]
cdq
mov ecx, 0xe733
sub ecx, dword [0x100a20f8]
mov esi, 0
sbb esi, dword [0x100a20fc]
mov edi, dword [0x100a2108]
mov ebx, dword [0x100a210c]
not edi
not ebx
sub ecx, edi
sbb esi, ebx
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x3c], eax
mov edx, dword [0x100a20dc]
add edx, 0x7fd3
xor eax, eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
mov dword [0x100a20f4], 0x5507
push 0
push 0x35
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call fcn.10073ef0
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx eax, byte [0x100a207a]
add eax, 0x90
mov byte [0x100a2027], al
movsx ecx, word [0x100a20c8]
movzx edx, word [0x100a20e0]
imul ecx, edx
mov word [0x100a20c8], cx
movsx eax, byte [str.y4The_server_is_requ]
test eax, eax
jne 0x100416f4
mov dword [ebp - 0x240], 1
jmp 0x100416fe
mov dword [ebp - 0x240], 0
movsx eax, word [ebp - 8]
xor eax, dword [ebp - 0x240]
not eax
cdq
mov ecx, eax
mov esi, edx
movsx eax, word [ebp - 0x1c]
cdq
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
sub edi, eax
sbb ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073ef0
mov byte [0x100a207a], al
movsx edx, byte [str.y4The_server_is_requ]
imul edx, dword [0x100a20e4]
movsx eax, byte [str.y4The_server_is_requ]
add eax, edx
mov byte [str.y4The_server_is_requ], al
xor eax, eax
jmp 0x10045eba
mov ecx, 2
mov word [0x100a20e0], cx
mov dword [0x100a20dc], 0xe0
mov edx, 1
imul eax, edx, 0x72b
mov cl, byte [ebp - 0x20]
mov byte [eax + 0x10141e10], cl
movzx edx, byte [ebp - 3]
movsx eax, byte [ebp - 2]
sub edx, eax
mov byte [ebp - 3], dl
cmp dword [ebp - 0x54], 0
jne 0x10041798
mov dword [ebp - 0x244], 1
jmp 0x100417a2
mov dword [ebp - 0x244], 0
movsx ecx, word [ebp - 0x14]
mov edx, dword [ebp - 0x54]
imul edx, ecx
imul edx, dword [ebp - 0x244]
mov dword [ebp - 0x44], edx
movzx eax, word [0x100a20e0]
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0xc8], 0
je 0x100417e7
cmp dword [ebp - 0xc8], 1
je 0x10041837
cmp dword [ebp - 0xc8], 2
je 0x10041869
jmp 0x100418f2
imul ecx, dword [ebp - 0x40], 0xad
mov word [0x100a2138], cx
movsx edx, word [0x100a2110]
sub edx, dword [ebp - 0x44]
movsx eax, word [0x100a2110]
or eax, edx
mov word [0x100a2110], ax
movsx ecx, byte [ebp - 2]
imul edx, ecx, 0xfe3
mov word [ebp - 0xc], dx
mov eax, dword [0x100a2128]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
jmp 0x100418f2
movsx edx, word [ebp - 0x10]
add edx, 0x617e64c6
mov dword [0x100a20dc], edx
mov eax, dword [0x100a2c3c]
xor ecx, ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
movzx eax, word [ebp - 0xc]
cdq
xor eax, dword [0x100a20d0]
mov dword [0x100a2100], eax
jmp 0x100418f2
mov eax, dword [0x100a2114]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
mov esi, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x840], edx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x844], ecx
xor esi, eax
movsx eax, word [0x100a20c8]
not eax
cdq
mov ecx, dword [0x100a2148]
mov edi, dword [0x100a214c]
push edx
push eax
push edi
push ecx
call fcn.10073ef0
add esi, eax
mov word [0x100a20e0], si
mov edx, dword [ebp - 0x50]
sub edx, 0xc808067d
mov word [ebp - 0x14], dx
movzx eax, byte [ebp - 4]
sub eax, 0x6dcffff5
mov word [0x100a2110], ax
imul ecx, dword [ebp - 0x248], 0x327
mov edx, dword [ebp - 0x248]
add edx, 0x11f
cmp ecx, edx
je 0x100458de
mov dword [ebp - 0xd0], 0x2b
mov ax, word [ebp - 0x1c]
add ax, 1
mov word [ebp - 0x1c], ax
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
movsx eax, word [ebp - 8]
test eax, eax
jne 0x1004194e
mov dword [ebp - 0x24c], 1
jmp 0x10041958
mov dword [ebp - 0x24c], 0
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x664], ecx
mov dword [ebp - 0x660], edx
mov eax, dword [ebp - 0x664]
or eax, dword [ebp - 0x660]
jne 0x10041984
mov dword [ebp - 0x250], 1
jmp 0x1004198e
mov dword [ebp - 0x250], 0
mov eax, dword [ebp - 0x24c]
or eax, dword [ebp - 0x250]
not eax
cdq
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
cmp dword [0x100a20dc], 0
je 0x10041bc1
mov dword [ebp - 0x50], 2
mov ecx, dword [ebp - 0x44]
add ecx, 0xe791
mov dword [0x100a20e4], ecx
mov dl, byte [ebp - 2]
sub dl, 1
mov byte [ebp - 2], dl
movsx eax, word [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x848], eax
sub edx, ecx
mov byte [ebp - 2], dl
imul ecx, dword [ebp - 0x4c], 0x30815f0b
mov word [ebp - 0xc], cx
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0xcc], edx
cmp dword [ebp - 0xcc], 0
je 0x10041a2a
cmp dword [ebp - 0xcc], 1
je 0x10041aea
cmp dword [ebp - 0xcc], 2
je 0x10041b21
jmp 0x10041bbc
movzx eax, byte [0x100a207b]
movzx ecx, word [0x100a211c]
add eax, ecx
movzx edx, byte [0x100a207b]
imul edx, eax
mov byte [0x100a207b], dl
mov eax, dword [0x100a2120]
not eax
cdq
sub eax, 0xe06272ee
mov dword [ebp - 0x3c], eax
mov eax, dword [0x100a2128]
cdq
add eax, 0x40d6afcf
mov dword [0x100a2100], eax
movsx eax, byte [ebp - 2]
movsx ecx, word [ebp - 0x10]
xor eax, ecx
cdq
mov ecx, eax
movzx eax, word [0x100a211c]
cdq
mov edx, dword [0x100a2150]
mov esi, dword [0x100a2154]
mov dword [ebp - 0x84c], esi
sub eax, edx
add ecx, eax
mov dword [0x100a20e4], ecx
mov eax, dword [0x100a2150]
mov ecx, dword [0x100a2154]
mov dword [ebp - 0x850], ecx
sub eax, 0x675f4e76
mov dword [ebp - 0x40], eax
movsx edx, byte [ebp - 2]
movzx eax, word [ebp - 0xc]
add edx, eax
jne 0x10041acc
mov dword [ebp - 0x254], 1
jmp 0x10041ad6
mov dword [ebp - 0x254], 0
mov ecx, dword [0x100a20e4]
add ecx, dword [ebp - 0x254]
mov dword [ebp - 0x54], ecx
jmp 0x10041bbc
movzx edx, byte [0x100a207b]
movsx eax, word [0x100a20f0]
add edx, eax
movzx ecx, byte [0x100a207b]
sub ecx, edx
mov byte [0x100a207b], cl
mov edx, dword [ebp - 0x44]
shl edx, 3
mov dword [0x100a2128], edx
mov dword [ebp - 0x54], 0x70bff4f0
jmp 0x10041bbc
mov ecx, dword [ebp - 0x5c]
not ecx
mov esi, dword [ebp - 0x58]
not esi
sub ecx, dword [0x100a20d0]
sbb esi, dword [0x100a20d4]
movsx eax, word [ebp - 0x14]
imul eax, dword [0x100a2114]
cdq
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov ecx, eax
mov esi, edx
movsx eax, word [0x100a20f0]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x58], eax
movzx ecx, byte [0x100a207b]
test ecx, ecx
jne 0x10041b87
mov dword [ebp - 0x258], 1
jmp 0x10041b91
mov dword [ebp - 0x258], 0
movzx edx, word [ebp - 0xc]
not edx
add edx, dword [ebp - 0x258]
mov dword [0x100a20f4], edx
mov eax, dword [0x100a2120]
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
mov al, byte [0x100a2c3c]
mov byte [ebp - 2], al
jmp 0x10041cdf
cmp dword [0x100a20f4], 0
jne 0x10041bd6
mov dword [ebp - 0x25c], 1
jmp 0x10041be0
mov dword [ebp - 0x25c], 0
movzx ecx, word [0x100a2124]
cmp dword [ebp - 0x25c], ecx
jle 0x10041c7f
movsx edx, word [ebp - 0x14]
not edx
movzx eax, word [0x100a211c]
imul edx, eax
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x54]
add edx, ecx
mov dword [ebp - 0x54], edx
movzx eax, byte [ebp - 3]
add eax, dword [ebp - 0x3c]
cdq
mov dword [0x100a2148], eax
mov dword [0x100a214c], edx
mov eax, dword [0x100a20dc]
xor ecx, ecx
push 0xb17b3
push 0x37576381
push ecx
push eax
call fcn.10073ef0
mov dword [ebp - 0x40], eax
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
push 0
push 0x9b
push eax
push edx
call fcn.10073ef0
mov dword [ebp - 0x50], eax
mov eax, dword [0x100a2104]
cdq
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0x854], edx
sub eax, ecx
mov dword [0x100a2104], eax
jmp 0x10041cdf
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x66c], eax
mov dword [ebp - 0x668], ecx
mov edx, dword [ebp - 0x66c]
or edx, dword [ebp - 0x668]
je 0x10041cdf
mov al, byte [0x100a2c3c]
mov byte [0x100a207b], al
movsx ecx, word [ebp - 0x18]
movsx edx, byte [ebp - 2]
not edx
xor ecx, edx
not ecx
mov word [ebp - 8], cx
movsx eax, byte [str.y4The_server_is_requ]
cdq
push 0x4f0
push 0xf0176286
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0xd0]
add eax, 1
mov dword [ebp - 0xd0], eax
cmp dword [ebp - 0xd0], 0xfde
jl 0x100419a8
mov dword [ebp - 0xd4], 0
jmp 0x10041d19
mov ecx, dword [ebp - 0xd4]
add ecx, 2
mov dword [ebp - 0xd4], ecx
cmp dword [ebp - 0xd4], 3
jge 0x10041d95
movsx eax, byte [0x100a2027]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, eax
movsx eax, byte [0x100a2027]
cdq
sub eax, ecx
mov byte [0x100a2027], al
movsx edx, word [0x100a20f0]
test edx, edx
jne 0x10041d67
mov dword [ebp - 0x260], 1
jmp 0x10041d71
mov dword [ebp - 0x260], 0
mov eax, dword [ebp - 0x260]
xor eax, 0x9b10
not eax
mov dword [ebp - 0x20], eax
mov cl, byte [0x100a207b]
add cl, 1
mov byte [0x100a207b], cl
jmp 0x10041d0a
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0xd8], edx
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov dword [0x100a20d8], eax
mov eax, dword [ebp - 0xd8]
add eax, 0x36d
mov dword [ebp - 0x858], eax
mov dword [0x100a2114], 4
movsx eax, word [ebp - 0x18]
not eax
movzx ecx, word [0x100a2118]
imul eax, ecx
cdq
mov ecx, dword [ebp - 0x44]
xor esi, esi
sub ecx, 0x283046ea
sbb esi, 0xb3fe0
not ecx
not esi
push esi
push ecx
push edx
push eax
call fcn.10073ef0
not eax
mov word [0x100a2118], ax
mov edx, dword [ebp - 0x4c]
add edx, 1
mov dword [ebp - 0x4c], edx
mov eax, dword [0x100a20d8]
add eax, 0x1cd777f2
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov edx, dword [0x100a20f4]
sub edx, dword [0x100a2100]
mov eax, dword [0x100a20f4]
sub eax, edx
mov dword [0x100a20f4], eax
cmp dword [ebp - 0x40], 0
jne 0x10041e43
mov dword [ebp - 0x264], 1
jmp 0x10041e4d
mov dword [ebp - 0x264], 0
mov ecx, dword [0x100a2128]
sub ecx, dword [ebp - 0x264]
mov byte [str.HeapSize], cl
mov edx, dword [0x100a2114]
mov dword [ebp - 0x268], edx
cmp dword [ebp - 0x268], 4
ja case.default.0x10041e7e
mov eax, dword [ebp - 0x268]
jmp dword [eax*4 + 0x10045ee8]
movsx ecx, byte [0x100a2027]
add ecx, dword [ebp - 0x3c]
mov byte [0x100a2027], cl
mov dl, byte [0x100a2c3c]
mov byte [ebp - 4], dl
cmp dword [0x100a2128], 0
je 0x10041ebb
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
jmp 0x10041ecf
movsx eax, word [0x100a20c8]
cdq
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], edx
mov edx, dword [ebp - 0x410]
mov dword [ebp - 0x20], edx
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x85c], ecx
sub eax, 0x984c0952
mov word [ebp - 0x1c], ax
mov edx, dword [ebp - 0x50]
add edx, 1
mov dword [ebp - 0x50], edx
mov eax, dword [0x100a2128]
xor eax, 0xd
mov dword [0x100a2104], eax
jmp case.default.0x10041e7e
mov cl, byte [0x100a207a]
mov byte [ebp - 4], cl
cmp dword [0x100a20d8], 0
je 0x10041f2a
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x26c], edx
jmp 0x10041f37
movsx eax, word [0x100a20c8]
mov dword [ebp - 0x26c], eax
mov cx, word [ebp - 0x26c]
mov word [ebp - 0x10], cx
movsx edx, word [ebp - 0x1c]
imul edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
sub eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x40]
xor edx, edx
push 0x492ce
push 0xcc7829c4
push edx
push ecx
call fcn.10073ef0
mov dword [0x100a2100], eax
jmp case.default.0x10041e7e
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
push 0x6f759
push 0x609e8754
push ecx
push eax
call fcn.10073ef0
mov word [ebp - 0x1c], ax
movzx eax, word [0x100a211c]
cdq
mov ecx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub ecx, eax
sbb esi, edx
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
or edx, ecx
or eax, esi
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x20], 0
je 0x10041fc9
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0x418], ecx
mov dword [ebp - 0x414], edx
jmp 0x10041fe0
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x418]
mov dword [0x100a2128], edx
movsx eax, byte [0x100a203b]
imul eax, dword [0x100a20e4]
mov ecx, dword [0x100a20e4]
sub ecx, eax
mov dword [0x100a20e4], ecx
movsx edx, word [ebp - 8]
imul eax, edx, 0x647e
mov dword [0x100a20dc], eax
jmp case.default.0x10041e7e
movzx ecx, word [0x100a211c]
add ecx, 0xe9
mov byte [str.y4The_server_is_requ], cl
mov eax, dword [ebp - 0x3c]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x3c], eax
movsx edx, word [ebp - 8]
test edx, edx
jne 0x10042059
mov dword [ebp - 0x270], 1
jmp 0x10042063
mov dword [ebp - 0x270], 0
movzx eax, word [0x100a20e0]
not eax
mov ecx, dword [ebp - 0x270]
sub ecx, eax
not ecx
mov eax, ecx
cdq
mov ecx, eax
movsx eax, byte [0x100a2027]
cdq
add eax, dword [ebp - 0x38]
add ecx, eax
movsx edx, byte [ebp - 2]
movsx eax, word [ebp - 8]
lea edx, [edx + eax + 0x61e791ea]
add ecx, edx
mov dword [0x100a2114], ecx
mov al, byte [0x100a2c3c]
mov byte [0x100a203b], al
mov ecx, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov dword [ebp - 0x860], edx
add ecx, 0x757f
mov dword [ebp - 0x20], ecx
movsx eax, byte [ebp - 2]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, eax
adc esi, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], esi
jmp case.default.0x10041e7e
mov dword [ebp - 0x3c], 0x921b
mov edx, dword [0x100a2100]
imul edx, dword [0x100a2128]
not edx
movzx eax, word [0x100a20e0]
mov ecx, 0x84
sub ecx, eax
movsx eax, byte [ebp - 2]
movzx esi, byte [ebp - 4]
not esi
sub eax, esi
add ecx, eax
and edx, ecx
mov dword [ebp - 0x4c], edx
mov ecx, dword [0x100a2120]
sub ecx, 0xb6f2
movzx edx, byte [ebp - 3]
sub ecx, edx
movzx eax, byte [ebp - 4]
movsx edx, word [0x100a20f0]
imul eax, edx
movzx edx, word [0x100a20e0]
add eax, edx
add ecx, eax
mov dword [0x100a2100], ecx
mov eax, dword [0x100a20d8]
sub eax, 0xfe32d0c2
mov byte [str.HeapSize], al
mov ecx, dword [ebp - 0x50]
add ecx, 1
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0xd8]
add edx, 0x6ef1
mov dword [ebp - 0x298], edx
movsx eax, word [ebp - 8]
push eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x20], 0
je 0x10042186
jmp 0x10042442
movzx ecx, word [0x100a2118]
movsx edx, byte [ebp - 2]
cmp ecx, edx
jle 0x100421a1
mov dword [ebp - 0x274], 1
jmp 0x100421ab
mov dword [ebp - 0x274], 0
cmp dword [ebp - 0x48], 0
jne 0x100421c5
xor eax, eax
mov dword [ebp - 0x420], 1
mov dword [ebp - 0x41c], eax
jmp 0x100421d0
xorps xmm0, xmm0
movlpd qword [ebp - 0x420], xmm0
mov ecx, dword [ebp - 0x420]
sub ecx, dword [0x100a20d0]
mov edx, dword [ebp - 0x41c]
sbb edx, dword [0x100a20d4]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x670], edx
mov eax, dword [ebp - 0x674]
or eax, dword [ebp - 0x670]
jne 0x1004220e
mov dword [ebp - 0x278], 1
jmp 0x10042218
mov dword [ebp - 0x278], 0
mov ecx, dword [ebp - 0x274]
not ecx
cmp ecx, dword [ebp - 0x278]
jle 0x10042234
mov dword [ebp - 0x27c], 1
jmp 0x1004223e
mov dword [ebp - 0x27c], 0
mov edx, dword [ebp - 0x27c]
not edx
test edx, edx
je 0x1004230e
xor eax, eax
mov dword [ebp - 0x30], 0x76a418d0
mov dword [ebp - 0x2c], eax
movsx eax, word [ebp - 0x14]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
or ecx, eax
or esi, edx
mov dword [ebp - 0x67c], ecx
mov dword [ebp - 0x678], esi
mov edx, dword [ebp - 0x67c]
or edx, dword [ebp - 0x678]
jne 0x1004228f
mov dword [ebp - 0x280], 1
jmp 0x10042299
mov dword [ebp - 0x280], 0
movsx eax, word [ebp - 0x1c]
not eax
imul eax, dword [ebp - 0x280]
mov dword [0x100a20e4], eax
cmp dword [0x100a2114], 0
je 0x100422ca
movsx eax, byte [0x100a2027]
cdq
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x39c], edx
jmp 0x100422e2
mov ecx, dword [0x100a2140]
mov edx, dword [0x100a2144]
mov dword [ebp - 0x3a0], ecx
mov dword [ebp - 0x39c], edx
mov eax, dword [ebp - 0x3a0]
mov ecx, dword [ebp - 0x39c]
mov dword [0x100a2150], eax
mov dword [0x100a2154], ecx
movzx edx, word [ebp - 0xc]
add edx, dword [0x100a20d8]
mov dword [0x100a20d8], edx
jmp 0x10042442
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x10042379
push 0xf230d
push 0x912f6557
mov ecx, dword [ebp - 0x58]
push ecx
mov edx, dword [ebp - 0x5c]
push edx
call fcn.10073ef0
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
movzx eax, word [ebp - 0xc]
imul eax, dword [ebp - 0x54]
mov word [ebp - 0xc], ax
mov dword [ebp - 0x20], 0x6062
movzx ecx, word [0x100a2124]
sub ecx, 0x558b88be
mov dword [0x100a2104], ecx
mov eax, dword [ebp - 0x3c]
shl eax, 7
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x50], edx
jmp 0x10042442
movsx eax, byte [ebp - 2]
test eax, eax
je 0x10042442
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [0x100a20d0], ecx
mov dword [0x100a20d4], edx
mov eax, dword [0x100a2140]
add eax, 0x2a09ad90
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov dword [ebp - 0x864], edx
add ecx, 0xbabf787f
mov word [ebp - 0x14], cx
movzx eax, word [0x100a2138]
test eax, eax
jne 0x100423d7
mov dword [ebp - 0x284], 1
jmp 0x100423e1
mov dword [ebp - 0x284], 0
movsx ecx, word [ebp - 0x18]
test ecx, ecx
jne 0x100423f5
mov dword [ebp - 0x288], 1
jmp 0x100423ff
mov dword [ebp - 0x288], 0
movsx edx, word [0x100a20c8]
xor edx, dword [0x100a20dc]
imul edx, dword [ebp - 0x284]
mov esi, edx
movsx eax, word [ebp - 0x1c]
cdq
mov ecx, dword [0x100a20e8]
mov edi, dword [0x100a20ec]
push edi
push ecx
push edx
push eax
call fcn.10073ef0
mov edx, dword [ebp - 0x54]
imul edx, dword [ebp - 0x288]
and eax, edx
not eax
add esi, eax
mov dword [ebp - 0x44], esi
mov eax, dword [ebp - 0xd8]
add eax, 0xb515
mov dword [ebp - 0x868], eax
mov ecx, dword [ebp - 0x44]
cmp dword [ebp - 0x20], ecx
ja 0x10042467
mov dword [ebp - 0x28c], 1
jmp 0x10042471
mov dword [ebp - 0x28c], 0
movzx edx, word [ebp - 0xc]
cmp dword [ebp - 0x28c], edx
jl 0x10042564
mov eax, dword [0x100a2104]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
mov dword [ebp - 0x684], eax
mov dword [ebp - 0x680], edx
mov dword [ebp - 0x68c], ecx
mov dword [ebp - 0x688], esi
mov edx, dword [ebp - 0x684]
cmp edx, dword [ebp - 0x68c]
jne 0x100424cd
mov eax, dword [ebp - 0x680]
cmp eax, dword [ebp - 0x688]
jne 0x100424cd
mov dword [ebp - 0x290], 1
jmp 0x100424d7
mov dword [ebp - 0x290], 0
mov ecx, dword [ebp - 0x4c]
xor edx, edx
mov dword [ebp - 0x694], ecx
mov dword [ebp - 0x690], edx
cmp dword [ebp - 0x694], 0xb2474af6
jne 0x10042500
cmp dword [ebp - 0x690], 0xfff10b9a
je 0x1004250c
mov dword [ebp - 0x294], 1
jmp 0x10042516
mov dword [ebp - 0x294], 0
mov eax, dword [ebp - 0x290]
not eax
cmp eax, dword [ebp - 0x294]
je 0x10042564
mov cx, word [0x100a2c3c]
mov word [0x100a211c], cx
xor edx, edx
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
add eax, dword [0x100a2100]
adc ecx, edx
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], ecx
movsx edx, word [ebp - 0x10]
imul eax, edx, 0xa9b1
mov word [0x100a2110], ax
mov dword [ebp - 0xf4], 0
jmp 0x1004257f
mov ecx, dword [ebp - 0xf4]
add ecx, 2
mov dword [ebp - 0xf4], ecx
cmp dword [ebp - 0xf4], 0x289
jge 0x100425d7
cmp dword [0x100a20d8], 0
je 0x100425c3
mov edx, dword [0x100a2100]
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0x86c], ecx
sub edx, eax
mov dword [0x100a2100], edx
movzx eax, byte [ebp - 4]
cdq
sub eax, 0xa10d9679
mov word [0x100a2138], ax
mov dx, word [0x100a20f0]
add dx, 1
mov word [0x100a20f0], dx
jmp 0x10042570
mov eax, dword [ebp - 0x298]
or eax, dword [ebp - 0x298]
xor eax, 0x6b53
mov dword [ebp - 0x4d0], eax
mov ecx, 0x975a
mov word [0x100a2138], cx
mov edx, dword [str.KeyPurposes]
mov dword [ebp - 0x7f4], edx
mov eax, dword [0x1008693c]
mov dword [ebp - 0x7f0], eax
mov ecx, dword [0x10086940]
mov dword [ebp - 0x7ec], ecx
lea edx, [ebp - 0x7f4]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [ebp - 8], ax
movzx eax, word [0x100a2138]
movsx ecx, byte [ebp - 2]
add ecx, 0x4400975a
cmp eax, ecx
jne 0x100427aa
mov eax, dword [0x100a2104]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, 0x1a
adc esi, 0
mov dword [ebp - 0x69c], eax
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x6a4], ecx
mov dword [ebp - 0x6a0], esi
mov edx, dword [ebp - 0x69c]
cmp edx, dword [ebp - 0x6a4]
jne 0x100427aa
mov eax, dword [ebp - 0x698]
cmp eax, dword [ebp - 0x6a0]
jne 0x100427aa
movsx eax, word [ebp - 0x10]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
add ecx, eax
adc esi, edx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movzx eax, word [0x100a20e0]
cdq
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov ecx, dword [0x100a2114]
imul ecx, dword [ebp - 0x4c]
mov edx, dword [0x100a2114]
add edx, ecx
mov dword [0x100a2114], edx
mov eax, dword [0x100a2104]
cdq
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x6ac], ecx
mov dword [ebp - 0x6a8], esi
mov edx, dword [ebp - 0x6ac]
or edx, dword [ebp - 0x6a8]
jne 0x1004272b
mov dword [ebp - 0x29c], 1
jmp 0x10042735
mov dword [ebp - 0x29c], 0
movzx eax, byte [0x100a207a]
movzx ecx, word [ebp - 0xc]
xor eax, ecx
cdq
mov ecx, eax
mov esi, edx
sub ecx, 0x3cdeba26
sbb esi, 0x15c04
movsx eax, word [ebp - 0x18]
xor eax, 0x9bde
and eax, dword [ebp - 0x29c]
cdq
sub ecx, eax
sbb esi, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], esi
jmp 0x100427aa
mov ecx, 0x975a
mov word [0x100a2138], cx
mov edx, dword [ebp - 0x48]
xor edx, 0xd96d68bf
mov dword [ebp - 0x50], edx
movsx eax, byte [ebp - 1]
cdq
mov ecx, dword [ebp - 0x34]
push ecx
mov ecx, dword [ebp - 0x38]
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 1], al
movsx edx, word [ebp - 0x14]
sar edx, 1
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x40], 0xd73
mov eax, dword [ebp - 0x4c]
and eax, 0xb817
mov word [0x100a20f0], ax
mov ecx, dword [ebp - 0x48]
add ecx, dword [0x100a20f8]
mov edx, dword [ebp - 0x48]
and edx, ecx
mov dword [ebp - 0x48], edx
mov byte [ebp - 4], 0xec
mov eax, dword [0x100a2128]
sub eax, dword [ebp - 0x48]
add eax, dword [0x100a2128]
mov dword [0x100a2128], eax
mov ecx, dword [0x100a2128]
sub ecx, 0x865d
mov dword [0x100a20e4], ecx
movsx edx, word [ebp - 0x10]
test edx, edx
je 0x10042883
xor eax, eax
mov word [ebp - 8], ax
movsx ecx, word [0x100a2110]
movzx edx, byte [0x100a207a]
imul ecx, edx
movsx eax, word [0x100a2110]
or eax, ecx
mov word [0x100a2110], ax
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
push 0
push 0x1f
push edx
push ecx
call fcn.10073ef0
mov ecx, dword [ebp - 0x20]
add ecx, eax
mov dword [ebp - 0x20], ecx
jmp 0x10042912
mov edx, dword [ebp - 0x40]
add edx, 0x306a916a
mov dword [ebp - 0x3c], edx
movzx eax, word [0x100a20e0]
movzx ecx, word [0x100a211c]
sub eax, ecx
movzx edx, word [0x100a20e0]
xor edx, eax
mov word [0x100a20e0], dx
mov eax, dword [0x100a20d0]
xor eax, dword [ebp - 0x38]
mov ecx, dword [0x100a20d4]
xor ecx, dword [ebp - 0x34]
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], ecx
movsx eax, word [0x100a20c8]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
sub ecx, eax
sbb esi, edx
add ecx, dword [0x100a20f8]
adc esi, dword [0x100a20fc]
mov dword [0x100a2130], ecx
mov dword [0x100a2134], esi
movsx eax, word [0x100a20c8]
cdq
push 0x8d745
push 0xfef06b1d
push edx
push eax
call fcn.10073ef0
mov word [ebp - 0x10], ax
mov byte [ebp - 1], 2
movsx edx, word [ebp - 0x10]
movsx eax, byte [ebp - 2]
imul edx, eax
movsx ecx, word [ebp - 0x10]
or edx, ecx
mov dword [0x100a20d8], edx
movzx edx, byte [ebp - 3]
not edx
mov byte [ebp - 3], dl
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov cl, 1
call fcn.10074000
mov word [ebp - 0x10], ax
movsx eax, word [ebp - 8]
movzx ecx, byte [ebp - 4]
add eax, ecx
movsx edx, word [ebp - 8]
imul edx, eax
mov word [ebp - 8], dx
mov eax, dword [0x100a2114]
mov dword [ebp - 0x4c], eax
mov cl, byte [ebp - 1]
mov byte [ebp - 0xe0], cl
cmp byte [ebp - 0xe0], 0
je 0x10042991
cmp byte [ebp - 0xe0], 1
je 0x100429f9
cmp byte [ebp - 0xe0], 2
je 0x10042aac
jmp 0x10042b01
mov edx, dword [ebp - 0x44]
xor edx, 0x2df4
mov byte [0x100a2027], dl
movsx eax, word [0x100a2110]
movsx ecx, byte [ebp - 2]
and eax, ecx
mov word [0x100a2110], ax
mov edx, dword [ebp - 0x4c]
mov eax, dword [0x100a2150]
mov ecx, dword [0x100a2154]
mov dword [ebp - 0x874], ecx
not eax
mov ecx, dword [0x100a20d0]
sub ecx, eax
add edx, ecx
mov eax, dword [0x100a2140]
and eax, 0x3a73f9d1
movsx ecx, word [0x100a2110]
sub ecx, dword [ebp - 0x40]
add eax, ecx
not eax
sub edx, eax
mov word [0x100a20c8], dx
jmp 0x10042b01
mov edx, dword [0x100a20d0]
sub edx, 0x7c
mov byte [0x100a207b], dl
cmp dword [ebp - 0x20], 0
je 0x10042a1a
mov ax, word [0x100a20e0]
mov word [ebp - 0x66], ax
jmp 0x10042a25
mov cx, word [0x100a2124]
mov word [ebp - 0x66], cx
mov dx, word [ebp - 0x66]
mov word [0x100a20c8], dx
mov eax, dword [0x100a2104]
add eax, dword [ebp - 0x44]
mov ecx, dword [0x100a2104]
add ecx, eax
mov dword [0x100a2104], ecx
mov edx, dword [0x100a2120]
add edx, 0x57a44415
movsx eax, word [ebp - 8]
imul eax, edx
mov word [ebp - 8], ax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x38]
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
push edx
push ecx
mov eax, dword [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0x5c]
push ecx
call fcn.10073ef0
add eax, dword [ebp - 0x5c]
adc edx, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
jmp 0x10042b01
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x6b4], edx
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x6b4]
or ecx, dword [ebp - 0x6b0]
je 0x10042ad8
movzx edx, word [ebp - 0xc]
mov dword [ebp - 0x2a0], edx
jmp 0x10042ae2
movzx eax, byte [ebp - 3]
mov dword [ebp - 0x2a0], eax
mov cl, byte [ebp - 0x2a0]
mov byte [0x100a2027], cl
mov edx, 0x93cc
mov word [0x100a211c], dx
mov byte [str.y4The_server_is_requ], 0xc0
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0xe8], eax
mov ecx, dword [0x100a2114]
add ecx, 0xa303
mov word [0x100a211c], cx
movzx edx, byte [0x100a207b]
mov dword [ebp - 0x50], edx
movzx eax, byte [ebp - 3]
cdq
and eax, 0xc722b11
mov dword [0x100a20dc], eax
movzx eax, word [0x100a20e0]
mov ecx, dword [ebp - 0x44]
imul ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
xor edx, dword [ebp - 0x28]
xor eax, dword [ebp - 0x24]
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 - 0xe8]
add edx, 0x5b8
mov dword [ebp - 0x878], edx
movsx eax, word [0x100a2110]
sar eax, 4
mov word [ebp - 0xc], ax
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a2108], ecx
mov dword [0x100a210c], edx
mov dword [0x100a2104], 4
mov eax, dword [ebp - 0xe8]
add eax, 0x408
mov dword [ebp - 0x87c], eax
movzx ecx, word [0x100a2138]
push ecx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a20c8], ax
movsx edx, word [0x100a20c8]
test edx, edx
jne 0x10042e68
mov dword [0x100a20dc], 2
movzx eax, byte [ebp - 3]
cdq
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
sub ecx, eax
sbb esi, edx
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
sub edx, ecx
sbb eax, esi
mov dword [0x100a2108], edx
mov dword [0x100a210c], eax
mov ecx, dword [ebp - 0x54]
imul ecx, dword [ebp - 0x4c]
add ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], ecx
cmp dword [0x100a20f4], 0
jne 0x10042c42
mov dword [ebp - 0x2a4], 1
jmp 0x10042c4c
mov dword [ebp - 0x2a4], 0
movsx eax, word [ebp - 0x18]
mov edx, dword [ebp - 0x3c]
not edx
sub eax, edx
movsx ecx, word [ebp - 0x18]
xor ecx, dword [ebp - 0x2a4]
sub eax, ecx
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [0x100a2114]
cdq
mov edi, dword [ebp - 0x5c]
sub edi, eax
mov eax, dword [ebp - 0x58]
sbb eax, edx
movzx edx, byte [ebp - 3]
mov ebx, dword [ebp - 0x54]
not ebx
imul edx, ebx
xor ebx, ebx
add edi, edx
adc eax, ebx
sub ecx, edi
sbb esi, eax
not ecx
not esi
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], esi
mov eax, 0x1300
mov word [0x100a2138], ax
mov ecx, dword [ebp - 0x5c]
or ecx, 0xb879
mov word [0x100a2110], cx
mov edx, dword [0x100a20dc]
mov dword [ebp - 0xe4], edx
cmp dword [ebp - 0xe4], 0
je 0x10042ce7
cmp dword [ebp - 0xe4], 1
je 0x10042d79
cmp dword [ebp - 0xe4], 2
je 0x10042df2
jmp 0x10042e68
movsx eax, word [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
add ecx, eax
mov dword [ebp - 0x54], ecx
cmp dword [ebp - 0x44], 0
je 0x10042d03
mov dx, word [ebp - 0x10]
mov word [ebp - 0x6e], dx
jmp 0x10042d0b
mov ax, word [ebp - 8]
mov word [ebp - 0x6e], ax
mov cx, word [ebp - 0x6e]
mov word [ebp - 0x18], cx
movzx edx, word [0x100a211c]
mov eax, dword [0x100a20e4]
lea ecx, [eax + edx + 0x4ded53ad]
mov dword [0x100a20e4], ecx
mov ecx, dword [0x100a2130]
mov edx, dword [0x100a2134]
mov dword [ebp - 0x880], edx
xor ecx, 0xdb
movsx eax, word [ebp - 8]
cdq
sub eax, ecx
mov word [ebp - 8], ax
movzx eax, word [ebp - 0xc]
add eax, 0x1d49aac4
mov dword [ebp - 0x20], eax
movzx ecx, byte [str.HeapSize]
add ecx, dword [ebp - 0x3c]
movzx edx, byte [str.HeapSize]
add edx, ecx
mov byte [str.HeapSize], dl
jmp 0x10042e68
movsx eax, word [ebp - 8]
cdq
add eax, 0x73f57555
adc edx, 0xbdbc9
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
movzx eax, byte [str.HeapSize]
movsx ecx, word [0x100a2110]
movzx edx, word [0x100a2138]
xor ecx, edx
add eax, ecx
cdq
mov ecx, dword [0x100a2150]
mov edx, dword [0x100a2154]
mov dword [ebp - 0x884], edx
add ecx, eax
mov dword [0x100a20d8], ecx
mov eax, dword [0x100a20d0]
add eax, 0x932b
mov dword [ebp - 0x20], eax
mov cl, byte [0x100a2c3c]
mov byte [0x100a203b], cl
movzx edx, word [0x100a2118]
movzx eax, byte [ebp - 3]
add edx, eax
mov word [0x100a2118], dx
jmp 0x10042e68
movzx ecx, byte [0x100a207b]
movsx edx, byte [ebp - 1]
sub ecx, edx
movzx eax, byte [0x100a207b]
add eax, ecx
mov byte [0x100a207b], al
mov dword [ebp - 0x3c], 0x976ddc9b
cmp dword [0x100a2120], 0
je 0x10042e37
mov ecx, dword [0x100a20d0]
mov edx, dword [0x100a20d4]
mov dword [ebp - 0x428], ecx
mov dword [ebp - 0x424], edx
jmp 0x10042e4a
mov eax, dword [0x100a20dc]
xor ecx, ecx
mov dword [ebp - 0x428], eax
mov dword [ebp - 0x424], ecx
mov dx, word [ebp - 0x428]
mov word [0x100a20c8], dx
movsx eax, word [ebp - 8]
cdq
sub eax, 0x280c8d6e
mov word [0x100a20e0], ax
mov eax, dword [ebp - 0xe8]
add eax, 0x2cf
mov dword [ebp - 0x2fc], eax
movzx ecx, word [ebp - 0xc]
mov edx, dword [ebp - 0x20]
sub edx, ecx
mov eax, dword [ebp - 0x20]
sub eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [0x100a2120]
add ecx, 0x1b88b0cb
mov byte [ebp - 4], cl
mov dx, word [0x100a2c3c]
mov word [ebp - 8], dx
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0x94], eax
movsx ecx, byte [ebp - 1]
movzx edx, word [0x100a2118]
cmp ecx, edx
jne 0x10042ed6
movsx eax, byte [ebp - 1]
push eax
call dword [sym.imp.USER32.dll_OpenIcon]
xor ecx, ecx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
jmp 0x10042f6d
movsx edx, word [ebp - 0x1c]
test edx, edx
je 0x10042ee6
movsx eax, word [ebp - 0x10]
test eax, eax
jne 0x10042f2d
mov ecx, dword [0x100a2148]
mov esi, dword [0x100a214c]
movzx eax, byte [ebp - 4]
cdq
mov dword [ebp - 0x6bc], ecx
mov dword [ebp - 0x6b8], esi
mov dword [ebp - 0x6c4], eax
mov dword [ebp - 0x6c0], edx
mov edx, dword [ebp - 0x6b8]
cmp edx, dword [ebp - 0x6c0]
ja 0x10042f6d
jb 0x10042f2d
mov eax, dword [ebp - 0x6bc]
cmp eax, dword [ebp - 0x6c4]
jae 0x10042f6d
mov ecx, dword [0x100a2128]
add ecx, 0x67d50f90
mov word [ebp - 0x14], cx
movzx edx, byte [0x100a207a]
imul edx, dword [0x100a20dc]
movzx eax, byte [0x100a207a]
sub eax, edx
mov byte [0x100a207a], al
movzx ecx, byte [ebp - 4]
movsx edx, word [ebp - 0x1c]
imul ecx, edx
movzx eax, byte [ebp - 4]
add eax, ecx
mov byte [ebp - 4], al
mov ecx, dword [ebp - 0x94]
add ecx, 0x55b
mov dword [ebp - 0x4d4], ecx
cmp dword [0x100a20d8], 0
je 0x10043154
movsx edx, byte [0x100a203b]
cmp dword [0x100a20d8], edx
jne 0x100430d7
mov eax, dword [0x100a20f8]
or eax, dword [0x100a20fc]
je 0x10042fb1
jmp 0x100430d5
movsx ecx, byte [0x100a2027]
movzx edx, byte [str.HeapSize]
cmp ecx, edx
jge 0x10042fd7
xor eax, eax
mov dword [ebp - 0x430], 1
mov dword [ebp - 0x42c], eax
jmp 0x10042fe2
xorps xmm0, xmm0
movlpd qword [ebp - 0x430], xmm0
mov ecx, dword [ebp - 0x430]
add ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x42c]
adc edx, dword [ebp - 0x34]
not ecx
not edx
mov dword [ebp - 0x6cc], ecx
mov dword [ebp - 0x6c8], edx
mov eax, dword [ebp - 0x6cc]
or eax, dword [ebp - 0x6c8]
je 0x100430d5
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x888], edx
add ecx, 0x661bed91
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
add eax, 0x14017195
adc ecx, 0xb9f24
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
movsx eax, word [ebp - 0x18]
movsx edx, word [ebp - 0x10]
imul eax, edx
cdq
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x88c], edx
sub eax, ecx
mov byte [ebp - 2], al
movzx eax, byte [ebp - 3]
sub eax, 0x67
movsx ecx, byte [ebp - 2]
xor ecx, eax
mov byte [ebp - 2], cl
movzx edx, byte [ebp - 4]
and edx, 0xf853
mov byte [ebp - 4], dl
mov eax, dword [0x100a20d0]
or eax, dword [0x100a20d4]
jne 0x10043094
mov dword [ebp - 0x2a8], 1
jmp 0x1004309e
mov dword [ebp - 0x2a8], 0
movsx eax, word [ebp - 0x14]
cdq
mov ecx, dword [0x100a20d4]
push ecx
mov ecx, dword [0x100a20d0]
push ecx
push edx
push eax
call fcn.10073ef0
mov ecx, dword [0x100a20dc]
not ecx
imul ecx, dword [ebp - 0x2a8]
xor esi, esi
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov dword [ebp - 0x20], eax
jmp 0x10043152
mov edx, 0x38
test edx, edx
je 0x10043152
mov eax, dword [ebp - 0x38]
or eax, dword [ebp - 0x34]
jne 0x100430f4
mov dword [ebp - 0x2ac], 1
jmp 0x100430fe
mov dword [ebp - 0x2ac], 0
mov ecx, dword [0x100a2128]
sub ecx, dword [ebp - 0x3c]
movzx edx, word [0x100a211c]
not edx
sub ecx, edx
mov eax, dword [ebp - 0x2ac]
sub eax, ecx
mov word [0x100a20c8], ax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x890], edx
mov word [0x100a2110], cx
movzx eax, word [ebp - 0xc]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov dword [ebp - 0x20], ecx
movsx eax, byte [ebp - 2]
cdq
add eax, 0x94ef66e4
mov byte [ebp - 3], al
jmp 0x100431ae
cmp dword [ebp - 0x44], 0
je 0x100431ae
movzx edx, word [0x100a2138]
movzx eax, word [ebp - 0xc]
imul edx, eax
movzx ecx, word [0x100a2138]
imul ecx, edx
mov word [0x100a2138], cx
push 0
push 0xebd9
mov edx, dword [0x100a2144]
push edx
mov eax, dword [0x100a2140]
push eax
call fcn.10073ef0
mov word [0x100a2118], ax
mov cl, byte [0x100a2c3c]
mov byte [ebp - 4], cl
mov edx, dword [0x100a2120]
mov word [0x100a2124], dx
mov eax, dword [ebp - 0x94]
add eax, 0x3cd
mov dword [ebp - 0x894], eax
xor ecx, ecx
mov dword [0x100a2108], 1
mov dword [0x100a210c], ecx
imul eax, dword [0x100a2114], 0x8d
cdq
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov eax, dword [ebp - 0x34]
sbb eax, edx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x40]
add ecx, 0xe702
xor edx, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edx
movzx eax, word [ebp - 0xc]
test eax, eax
je 0x10043214
movzx ecx, word [0x100a2124]
mov dword [ebp - 0x2b0], ecx
jmp 0x10043220
mov edx, dword [0x100a2128]
mov dword [ebp - 0x2b0], edx
mov ax, word [ebp - 0x2b0]
mov word [ebp - 8], ax
mov ecx, dword [0x100a2108]
mov edx, dword [0x100a210c]
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x3a8]
or eax, dword [ebp - 0x3a4]
je 0x10043268
cmp dword [ebp - 0x3a8], 1
jne 0x10043263
cmp dword [ebp - 0x3a4], 0
je 0x100432a4
jmp 0x100433c4
mov dword [ebp - 0x44], 0x916e8488
mov ecx, dword [0x100a2104]
xor ecx, dword [ebp - 0x40]
mov word [ebp - 0x1c], cx
movzx edx, byte [str.HeapSize]
mov eax, dword [0x100a20d8]
sub eax, edx
imul eax, dword [0x100a20d8]
mov dword [0x100a20d8], eax
mov ecx, dword [0x100a20f4]
mov dword [ebp - 0x20], ecx
jmp 0x100433c4
mov edx, dword [0x100a20d0]
or edx, dword [0x100a20d4]
jne 0x100432be
mov dword [ebp - 0x2b4], 1
jmp 0x100432c8
mov dword [ebp - 0x2b4], 0
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x898], edx
sub ecx, 0x10
movsx eax, byte [0x100a2027]
not eax
imul eax, dword [ebp - 0x2b4]
cdq
sub ecx, eax
mov word [ebp - 0xc], cx
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
mov edx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x28]
adc esi, edx
not ecx
not esi
mov eax, dword [0x100a2104]
cdq
mov edi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
not edi
not ebx
add eax, edi
adc edx, ebx
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [ebp - 0x4c], eax
mov eax, 0xdc28
mov word [ebp - 0xc], ax
movzx ecx, word [0x100a2118]
add ecx, 0x1dc4c035
jne 0x1004334a
mov dword [ebp - 0x2b8], 1
jmp 0x10043354
mov dword [ebp - 0x2b8], 0
mov edx, dword [0x100a20d8]
sub edx, dword [0x100a2100]
add edx, dword [ebp - 0x2b8]
xor eax, eax
mov ecx, dword [0x100a20e4]
and ecx, 0x59d9
xor esi, esi
mov edi, dword [0x100a2150]
mov ebx, dword [0x100a2154]
not edi
not ebx
xor ecx, edi
xor esi, ebx
or edx, ecx
or eax, esi
mov dword [ebp - 0x6d4], edx
mov dword [ebp - 0x6d0], eax
mov edx, dword [ebp - 0x6d4]
or edx, dword [ebp - 0x6d0]
jne 0x100433b3
mov eax, 1
mov word [ebp - 0x64], ax
jmp 0x100433b9
xor ecx, ecx
mov word [ebp - 0x64], cx
mov dx, word [ebp - 0x64]
mov word [0x100a2124], dx
mov eax, dword [ebp - 0x4d0]
add eax, dword [ebp - 0x94]
mov dword [ebp - 0xa0], eax
cmp dword [0x100a2120], 0
jne 0x100433eb
mov dword [ebp - 0x2bc], 1
jmp 0x100433f5
mov dword [ebp - 0x2bc], 0
mov ecx, dword [ebp - 0x2bc]
sub ecx, dword [ebp - 0x48]
mov esi, ecx
xor esi, 0x9686017e
movzx eax, byte [0x100a207a]
cdq
mov ecx, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
push edi
push ecx
push edx
push eax
call fcn.10073ef0
mov edi, eax
mov ebx, edx
movsx eax, word [ebp - 0x1c]
cdq
push edx
push eax
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ebp - 0x38]
push eax
call fcn.10073ef0
push edx
push eax
push ebx
push edi
call fcn.10073ef0
sub esi, eax
mov dword [0x100a2114], esi
mov ecx, dword [0x100a2c3c]
xor edx, edx
mov dword [0x100a2150], ecx
mov dword [0x100a2154], edx
mov eax, dword [ebp - 0x54]
sub eax, 0x4c8
mov word [0x100a20c8], ax
mov ecx, dword [ebp - 0x4d4]
add ecx, 0x3d2
mov edx, dword [ebp - 0xa0]
sub edx, ecx
mov eax, dword [ebp - 0xa0]
sub eax, dword [ebp - 0xa0]
cmp edx, eax
je 0x100458d1
mov dword [0x100a2100], 0x3f
movsx eax, byte [0x100a2027]
cdq
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
add ecx, eax
adc esi, edx
mov dword [0x100a2108], ecx
mov dword [0x100a210c], esi
movzx edx, word [0x100a20e0]
sub edx, 0xd7
mov word [ebp - 0x14], dx
mov dword [ebp - 0x50], 0xfda6
mov eax, dword [0x100a2c3c]
mov dword [0x100a2114], eax
mov ecx, dword [ebp - 0x48]
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x89c], eax
add ecx, edx
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x40]
add ecx, 1
cmp dword [0x100a2100], ecx
jne 0x10043980
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
je 0x1004356e
mov edx, dword [ebp - 0x84]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
mov dword [ebp - 0x8a0], eax
mov eax, dword [ebp - 0x84]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov dword [ebp - 0x8a4], eax
mov ecx, dword [ebp - 0x84]
push ecx
call dword [sym.imp.USER32.dll_IsWindowUnicode]
mov dword [ebp - 0x8a8], eax
cmp dword [ebp - 0x54], 0
jae 0x100436a9
mov dword [ebp - 0x9c], 0x20
cmp dword [0x100a2120], 0
je 0x1004359f
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x438], edx
mov dword [ebp - 0x434], eax
jmp 0x100435b3
movsx eax, word [0x100a2110]
cdq
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], edx
mov cx, word [ebp - 0x438]
mov word [0x100a2124], cx
mov edx, dword [ebp - 0x38]
sub edx, 0xdb
mov byte [str.HeapSize], dl
cmp dword [ebp - 0x40], 0
je 0x100435e1
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x2c0], eax
jmp 0x100435eb
movsx ecx, word [ebp - 0x14]
mov dword [ebp - 0x2c0], ecx
mov dl, byte [ebp - 0x2c0]
mov byte [ebp - 1], dl
movsx eax, byte [ebp - 2]
movzx ecx, byte [0x100a207b]
add eax, ecx
movsx edx, byte [ebp - 2]
add edx, eax
mov byte [ebp - 2], dl
movsx eax, byte [ebp - 2]
shl eax, 6
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x220d
mov word [ebp - 0xc], cx
movsx edx, word [ebp - 0x10]
test edx, edx
jne 0x10043635
mov dword [ebp - 0x2c4], 1
jmp 0x1004363f
mov dword [ebp - 0x2c4], 0
movzx eax, byte [0x100a207a]
movsx ecx, byte [str.y4The_server_is_requ]
add ecx, dword [ebp - 0x2c4]
imul eax, ecx
test eax, eax
jne 0x10043660
mov byte [ebp - 0x61], 1
jmp 0x10043664
mov byte [ebp - 0x61], 0
mov dl, byte [ebp - 0x61]
mov byte [0x100a203b], dl
movzx eax, word [0x100a2138]
imul ecx, eax, 0x968e
mov edx, dword [0x100a20f4]
add edx, ecx
mov dword [0x100a20f4], edx
mov eax, dword [ebp - 0x9c]
add eax, 1
mov dword [ebp - 0x9c], eax
cmp dword [ebp - 0x9c], 0xfda
jl 0x100435f4
jmp 0x100436f4
mov ecx, dword [ebp - 0x5c]
or ecx, dword [ebp - 0x58]
je 0x100436f4
mov edx, dword [ebp - 0x50]
sub edx, 0xdccaf0
mov dword [0x100a2100], edx
mov eax, dword [ebp - 0x4c]
shr eax, 8
mov byte [ebp - 4], al
mov cl, byte [ebp - 0x5c]
mov byte [str.y4The_server_is_requ], cl
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
mov ecx, dword [ebp - 0x3c]
add ecx, dword [0x100a20dc]
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], ecx
mov edx, dword [0x100a2128]
imul edx, dword [ebp - 0x48]
movsx eax, word [ebp - 0x14]
mov ecx, dword [ebp - 0x40]
sub ecx, eax
add edx, ecx
mov dword [ebp - 0x44], edx
movzx edx, word [0x100a2118]
test edx, edx
je 0x10043730
mov eax, dword [0x100a2130]
mov ecx, dword [0x100a2134]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], ecx
jmp 0x10043747
mov edx, dword [0x100a2140]
mov eax, dword [0x100a2144]
mov dword [ebp - 0x440], edx
mov dword [ebp - 0x43c], eax
mov cl, byte [ebp - 0x440]
mov byte [str.y4The_server_is_requ], cl
movsx edx, byte [ebp - 2]
imul edx, dword [0x100a2128]
mov byte [ebp - 2], dl
movsx eax, byte [str.y4The_server_is_requ]
not eax
movsx ecx, word [ebp - 0x14]
add eax, ecx
jne 0x10043786
xor edx, edx
mov dword [ebp - 0x448], 1
mov dword [ebp - 0x444], edx
jmp 0x10043791
xorps xmm0, xmm0
movlpd qword [ebp - 0x448], xmm0
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x444]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
movzx edx, word [0x100a20e0]
cmp edx, 1
jne 0x10043980
mov dword [ebp - 0x98], 0
jmp 0x100437ce
mov eax, dword [ebp - 0x98]
add eax, 2
mov dword [ebp - 0x98], eax
cmp dword [ebp - 0x98], 0xba
jge 0x100438ec
mov dword [ebp - 0x48], 1
mov ecx, 4
imul edx, ecx, 0x1cdd
mov al, byte [edx + 0x102d3e50]
mov byte [ebp - 1], al
imul ecx, dword [0x100a2104], 0xc8
mov word [0x100a20f0], cx
movsx edx, word [0x100a2110]
movzx eax, word [0x100a2138]
imul edx, eax
mov word [0x100a2110], dx
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x2c8], ecx
cmp dword [ebp - 0x2c8], 0
je 0x10043842
cmp dword [ebp - 0x2c8], 1
je 0x1004387f
jmp 0x100438d5
movsx edx, word [0x100a20c8]
shl edx, 1
mov dword [ebp - 0x3c], edx
xor eax, eax
mov dword [0x100a2130], 2
mov dword [0x100a2134], eax
imul ecx, dword [ebp - 0x44], 0xaabd4255
mov byte [ebp - 4], cl
mov edx, 1
imul eax, edx, 0x18
mov cl, byte [0x100a2027]
mov byte [eax + 0x1016ec20], cl
jmp 0x100438d5
movsx edx, word [0x100a2110]
add edx, dword [ebp - 0x48]
mov word [0x100a2110], dx
mov eax, dword [ebp - 0x44]
xor ecx, ecx
push 0xb99d5
push 0xb1fb6ded
push ecx
push eax
call fcn.10073ef0
mov byte [ebp - 4], al
mov edx, dword [0x100a20d8]
mov eax, dword [0x100a2150]
mov ecx, dword [0x100a2154]
mov dword [ebp - 0x8ac], ecx
sub edx, eax
mov eax, dword [0x100a20d8]
or eax, edx
mov dword [0x100a20d8], eax
mov dword [ebp - 0x54], 8
mov ecx, dword [ebp - 0x5c]
add ecx, 1
mov edx, dword [ebp - 0x58]
adc edx, 0
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
jmp 0x100437bf
jmp 0x10043980
mov dword [0x100a2100], 0x3f
movsx eax, word [ebp - 0x14]
mov ecx, dword [0x100a2104]
imul ecx, eax
mov edx, dword [0x100a2104]
add edx, ecx
mov dword [0x100a2104], edx
movsx eax, word [ebp - 0x18]
mov dword [0x100a20dc], eax
movsx ecx, word [ebp - 0x10]
mov dword [0x100a2114], ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
sub edx, 0x4f4eeb65
sbb eax, 0xf2f0d
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [0x100a2148]
mov esi, dword [0x100a214c]
push esi
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x40], eax
push 4
push 0x3000
push 0x100000
push 0
push 0
push 0
call fcn.100012c0
call eax
mov dword [ebp - 0x78], eax
movsx ecx, byte [ebp - 1]
movzx edx, word [0x100a211c]
cmp ecx, edx
jg 0x10043a27
mov dword [ebp - 0x2d0], 1
jmp 0x10043a31
mov dword [ebp - 0x2d0], 0
movzx eax, word [0x100a20e0]
cmp eax, dword [ebp - 0x2d0]
je 0x10043a91
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov eax, dword [0x100a2150]
mov esi, dword [0x100a2154]
push esi
push eax
push edx
push ecx
call fcn.10073ef0
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [0x100a2120]
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
mov ecx, dword [ebp - 0x50]
imul ecx, dword [0x100a20f4]
mov edx, dword [ebp - 0x50]
imul edx, ecx
mov dword [ebp - 0x50], edx
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0x50], eax
jmp 0x10043b32
mov ecx, dword [ebp - 0x40]
xor edx, edx
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
mov dword [ebp - 0x6dc], ecx
mov dword [ebp - 0x6d8], edx
mov dword [ebp - 0x6e4], eax
mov dword [ebp - 0x6e0], esi
mov ecx, dword [ebp - 0x6d8]
cmp ecx, dword [ebp - 0x6e0]
jb 0x10043b32
ja 0x10043ad2
mov edx, dword [ebp - 0x6dc]
cmp edx, dword [ebp - 0x6e4]
jb 0x10043b32
movzx eax, byte [0x100a207a]
imul ecx, eax, 0x99e4a6df
xor edx, edx
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
add eax, dword [0x100a20d0]
adc ecx, dword [0x100a20d4]
mov edx, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
add edx, eax
adc esi, ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], esi
movzx eax, word [0x100a2138]
xor eax, 0x13c91ae
mov word [ebp - 0x10], ax
mov ecx, dword [ebp - 0x54]
mov dword [0x100a20dc], ecx
movzx edx, byte [ebp - 3]
shl edx, 6
mov dword [ebp - 0x3c], edx
lea eax, [ebp - 0x36c]
push eax
push 0x100000
mov ecx, dword [ebp - 0x78]
push ecx
mov edx, dword [ebp - 0x2d4]
push edx
push 0
push 0
call fcn.100014d0
call eax
test eax, eax
je 0x10043b65
cmp dword [ebp - 0x36c], 0
jne 0x10043fcb
movsx eax, byte [ebp - 1]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x40]
xor ecx, 0x7dd7
mov dword [0x100a2120], ecx
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x8b0], eax
add edx, 0x30
mov word [0x100a211c], dx
movzx ecx, byte [ebp - 3]
imul eax, ecx, 0x3eca3c8c
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx edx, word [0x100a2138]
imul edx, dword [ebp - 0x20]
not edx
xor eax, eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
imul ecx, dword [0x100a20f4], 0x30fcdc8c
mov dword [0x100a2114], ecx
cmp dword [0x100a2100], 0
je 0x10043be4
movsx edx, word [0x100a20f0]
mov dword [ebp - 0x2d8], edx
jmp 0x10043bed
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x2d8]
mov dword [0x100a2100], ecx
mov edx, dword [ebp - 0x38]
sub edx, 1
mov eax, dword [ebp - 0x34]
sbb eax, 0
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], eax
imul ecx, dword [ebp - 0x44], 0xcfc50458
xor edx, edx
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edx
mov eax, dword [0x100a2c3c]
mov dword [ebp - 0x90], eax
movsx eax, word [ebp - 0x1c]
cdq
mov dword [ebp - 0x6ec], eax
mov dword [ebp - 0x6e8], edx
mov ecx, dword [ebp - 0x6e8]
cmp ecx, dword [ebp - 0x34]
jb 0x10043c5a
ja 0x10043c4e
mov edx, dword [ebp - 0x6ec]
cmp edx, dword [ebp - 0x38]
jb 0x10043c5a
mov dword [ebp - 0x2dc], 1
jmp 0x10043c64
mov dword [ebp - 0x2dc], 0
movsx eax, word [ebp - 0x1c]
cmp eax, 0x2b
jl 0x10043c79
mov dword [ebp - 0x2e0], 1
jmp 0x10043c83
mov dword [ebp - 0x2e0], 0
mov ecx, dword [ebp - 0x2dc]
cmp ecx, dword [ebp - 0x2e0]
jge 0x10043cec
mov edx, dword [str.DisplayName]
mov dword [ebp - 0x80c], edx
mov eax, dword [0x10086948]
mov dword [ebp - 0x808], eax
mov ecx, dword [0x1008694c]
mov dword [ebp - 0x804], ecx
mov edx, dword [0x10086950]
mov dword [ebp - 0x800], edx
mov eax, dword [0x10086954]
mov dword [ebp - 0x7fc], eax
mov ecx, dword [0x10086958]
mov dword [ebp - 0x7f8], ecx
lea edx, [ebp - 0x80c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [ebp - 0x48], eax
jmp 0x10043d6c
mov eax, dword [ebp - 0x20]
xor ecx, ecx
xor eax, 0x12b618bb
xor ecx, 0x4cd00
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
movsx edx, word [ebp - 0x1c]
add edx, 0x54
movzx eax, word [0x100a2118]
imul eax, edx
mov word [0x100a2118], ax
mov ecx, 2
imul edx, ecx, 0x14bc
mov ax, word [edx + 0x10138540]
mov word [ebp - 8], ax
movsx eax, word [ebp - 0x18]
movzx ecx, byte [ebp - 3]
not ecx
add eax, ecx
cdq
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
movsx edx, word [ebp - 0x18]
add edx, 0xca
mov byte [str.y4The_server_is_requ], dl
push 0x40d35
push 0xe658e508
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10073ef0
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x90]
add edx, 0x65c
mov dword [ebp - 0x8b4], edx
movsx eax, byte [0x100a2027]
push eax
call dword [sym.imp.USER32.dll_GetLastActivePopup]
mov word [ebp - 0x14], ax
mov ecx, dword [ebp - 0x90]
add ecx, 0x5c4
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x48]
sub edx, 0xb371bf95
mov dword [0x100a20e4], edx
mov eax, dword [0x100a2120]
sub eax, dword [ebp - 0x54]
mov dword [0x100a2120], eax
imul ecx, dword [ebp - 0x48], 0x39
mov dword [ebp - 0x20], ecx
movsx edx, word [0x100a20f0]
sub edx, 0x62
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x90]
add eax, 0x48d
mov dword [ebp - 0x2e8], eax
mov cx, word [0x100a20f0]
sub cx, 1
mov word [0x100a20f0], cx
movzx edx, word [0x100a20e0]
test edx, edx
jne 0x10043e0c
mov dword [ebp - 0x2e4], 1
jmp 0x10043e16
mov dword [ebp - 0x2e4], 0
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x3c]
movsx ecx, byte [ebp - 2]
sub ecx, dword [ebp - 0x2e4]
add eax, ecx
mov dword [0x100a20dc], eax
mov edx, dword [ebp - 0x20]
xor eax, eax
push 0x5d97a
push 0x63fd8750
push eax
push edx
call fcn.10073ef0
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x4d8]
add ecx, dword [ebp - 0x2e8]
cmp dword [ebp - 0x2e8], ecx
je 0x10043fcb
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x3c]
jb 0x10043e72
mov dword [ebp - 0x2ec], 1
jmp 0x10043e7c
mov dword [ebp - 0x2ec], 0
mov eax, dword [ebp - 0x2ec]
cmp eax, dword [ebp - 0x4c]
je 0x10043e93
mov dword [ebp - 0x2f4], 1
jmp 0x10043e9d
mov dword [ebp - 0x2f4], 0
mov ecx, dword [0x100a20f8]
not ecx
mov edx, dword [0x100a20fc]
not edx
mov dword [ebp - 0x6f4], ecx
mov dword [ebp - 0x6f0], edx
mov eax, dword [ebp - 0x6f4]
or eax, dword [ebp - 0x6f0]
je 0x10043edb
movsx ecx, byte [ebp - 2]
test ecx, ecx
je 0x10043edb
mov dword [ebp - 0x2f0], 1
jmp 0x10043ee5
mov dword [ebp - 0x2f0], 0
mov edx, dword [ebp - 0x2f0]
cmp edx, dword [ebp - 0x20]
ja 0x10043efc
mov dword [ebp - 0x2f8], 1
jmp 0x10043f06
mov dword [ebp - 0x2f8], 0
mov eax, dword [ebp - 0x2f4]
cmp eax, dword [ebp - 0x2f8]
je 0x10043f7e
mov ecx, 0xffffe5c2
mov word [ebp - 0x18], cx
movsx edx, byte [ebp - 1]
movzx eax, word [ebp - 0xc]
add edx, eax
mov byte [ebp - 1], dl
mov ecx, dword [0x100a20f8]
and ecx, dword [0x100a20f8]
mov edx, dword [0x100a20fc]
and edx, dword [0x100a20fc]
add ecx, dword [0x100a20f8]
adc edx, dword [0x100a20fc]
mov dword [0x100a20f8], ecx
mov dword [0x100a20fc], edx
movzx eax, word [0x100a2138]
add eax, dword [0x100a20e4]
mov ecx, dword [0x100a20e4]
sub ecx, eax
mov dword [0x100a20e4], ecx
mov dword [ebp - 0x4c], 8
jmp 0x10043fc6
movsx eax, byte [str.y4The_server_is_requ]
add eax, 0x7a757945
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
movsx eax, word [ebp - 0x14]
cdq
mov ecx, eax
sub ecx, 0x707f9f0
movzx eax, word [ebp - 0xc]
cdq
sub eax, ecx
mov word [ebp - 0xc], ax
movzx edx, word [0x100a2124]
sar edx, 8
mov byte [ebp - 4], dl
mov eax, 0x18
mov word [0x100a20c8], ax
jmp 0x100458de
mov byte [str.HeapSize], 1
movzx eax, word [0x100a2118]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
add ecx, eax
adc esi, edx
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
or edx, ecx
or eax, esi
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
mov cx, word [ebp - 0x14]
sub cx, 1
mov word [ebp - 0x14], cx
mov edx, dword [ebp - 0x44]
shl edx, 8
mov word [ebp - 0x10], dx
mov eax, dword [ebp - 0x2fc]
mov ecx, 0x379
sub ecx, dword [ebp - 0x2fc]
lea edx, [eax + ecx - 0x379]
shl edx, 6
add edx, dword [ebp - 0x78]
mov dword [ebp - 0x49c], edx
mov dword [0x100a20dc], 0x66
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
mov byte [0x100a207a], al
movzx eax, byte [0x100a207a]
test eax, eax
jl case.default.0x100440f1
mov ecx, 4
mov word [ebp - 8], cx
movzx edx, word [0x100a2118]
sub edx, 0xf0a0
not edx
movsx eax, word [ebp - 0x18]
imul edx, eax
mov byte [str.HeapSize], dl
movsx eax, word [ebp - 0x10]
cdq
add eax, dword [ebp - 0x5c]
adc edx, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movsx ecx, word [ebp - 0x14]
test ecx, ecx
je 0x100440ac
movsx edx, word [ebp - 8]
mov dword [ebp - 0x384], edx
jmp 0x100440b6
movsx eax, byte [ebp - 2]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x384]
cdq
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov eax, dword [0x100a2120]
sub eax, 0xdb53
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
movsx ecx, word [ebp - 8]
mov dword [ebp - 0x304], ecx
cmp dword [ebp - 0x304], 4
ja case.default.0x100440f1
mov edx, dword [ebp - 0x304]
jmp dword [edx*4 + 0x10045efc]
mov eax, dword [ebp - 0x5c]
sub eax, 0x6d
mov ecx, dword [ebp - 0x58]
sbb ecx, 0
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x44]
sub edx, dword [0x100a20d8]
mov dword [ebp - 0x44], edx
mov dword [0x100a2120], 0xe64f
jmp case.default.0x100440f1
movzx eax, word [0x100a2138]
movsx ecx, word [0x100a20f0]
sub eax, ecx
mov word [0x100a2138], ax
mov edx, dword [0x100a20dc]
sub edx, dword [0x100a2114]
mov dword [0x100a20dc], edx
movzx eax, byte [0x100a207b]
add eax, 0x74bb
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
mov eax, dword [0x100a2140]
sub eax, 0x90b2
mov dword [ebp - 0x4c], eax
jmp case.default.0x100440f1
mov ecx, dword [0x100a20d0]
or ecx, dword [0x100a20d4]
jne 0x10044199
xor edx, edx
mov dword [ebp - 0x6fc], 1
mov dword [ebp - 0x6f8], edx
jmp 0x100441a4
xorps xmm0, xmm0
movlpd qword [ebp - 0x6fc], xmm0
movsx eax, word [ebp - 0x14]
add eax, dword [ebp - 0x4c]
movsx ecx, word [ebp - 0x1c]
imul ecx, dword [ebp - 0x48]
xor eax, ecx
jne 0x100441cb
xor edx, edx
mov dword [ebp - 0x704], 1
mov dword [ebp - 0x700], edx
jmp 0x100441d6
xorps xmm0, xmm0
movlpd qword [ebp - 0x704], xmm0
mov ecx, dword [ebp - 0x6fc]
add ecx, dword [0x100a20f8]
mov eax, dword [ebp - 0x3c]
cdq
or ecx, eax
add ecx, dword [ebp - 0x704]
not ecx
mov word [0x100a2138], cx
imul edx, dword [0x100a20d8], 0xdc0ee3d7
mov dword [0x100a2100], edx
movsx eax, word [ebp - 0x18]
imul ecx, eax, 0x5338
mov dword [0x100a2128], ecx
mov dword [0x100a2120], 0xad
movsx eax, word [ebp - 0x1c]
and eax, 0xc6fe434
cdq
mov dword [0x100a2150], eax
mov dword [0x100a2154], edx
cmp dword [ebp - 0x40], 0
je 0x10044248
movsx edx, word [ebp - 0x1c]
mov dword [ebp - 0x308], edx
jmp 0x10044251
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x308], eax
mov cl, byte [ebp - 0x308]
mov byte [ebp - 4], cl
jmp case.default.0x100440f1
movsx edx, word [ebp - 8]
imul eax, edx, 0x75e3ff85
test eax, eax
jne 0x10044281
xor ecx, ecx
mov dword [ebp - 0x70c], 1
mov dword [ebp - 0x708], ecx
jmp 0x1004428c
xorps xmm0, xmm0
movlpd qword [ebp - 0x70c], xmm0
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov dword [ebp - 0x8b8], eax
add edx, dword [ebp - 0x70c]
mov dword [ebp - 0x20], edx
movsx ecx, word [ebp - 0x18]
sub ecx, dword [0x100a20f4]
jne 0x100442c6
xor edx, edx
mov dword [ebp - 0x458], 1
mov dword [ebp - 0x454], edx
jmp 0x100442d1
xorps xmm0, xmm0
movlpd qword [ebp - 0x458], xmm0
mov eax, dword [0x100a2120]
not eax
cdq
add eax, dword [0x100a20f8]
adc edx, dword [0x100a20fc]
mov ecx, dword [ebp - 0x454]
push ecx
mov ecx, dword [ebp - 0x458]
push ecx
push edx
push eax
call fcn.10073ef0
mov esi, eax
mov edi, edx
mov eax, dword [ebp - 0x3c]
cdq
mov ebx, eax
mov eax, edx
or ebx, dword [ebp - 0x38]
or eax, dword [ebp - 0x34]
not ebx
not eax
mov edx, dword [0x100a20dc]
xor ecx, ecx
mov dword [ebp - 0x48c], edi
mov edi, dword [0x100a20fc]
push edi
mov edi, dword [0x100a20f8]
push edi
push ecx
push edx
mov dword [ebp - 0x4dc], eax
call fcn.10073ef0
xor ebx, eax
mov edi, dword [ebp - 0x4dc]
xor edi, edx
add esi, ebx
mov ebx, dword [ebp - 0x48c]
adc ebx, edi
mov dword [ebp - 0x714], esi
mov dword [ebp - 0x710], ebx
mov edx, dword [ebp - 0x714]
or edx, dword [ebp - 0x710]
jne 0x10044373
mov dword [ebp - 0x30c], 1
jmp 0x1004437d
mov dword [ebp - 0x30c], 0
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x20], 0x53
movzx eax, byte [0x100a207a]
cdq
mov ecx, eax
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8bc], eax
add ecx, edx
movzx eax, byte [0x100a207a]
cdq
sub eax, ecx
mov byte [0x100a207a], al
movsx ecx, word [0x100a2110]
movzx edx, word [0x100a2138]
imul ecx, edx
movsx eax, word [0x100a2110]
sub eax, ecx
mov word [0x100a2110], ax
jmp case.default.0x100440f1
movzx ecx, word [0x100a2138]
add ecx, 0xbcc1
mov word [ebp - 0x18], cx
movsx edx, word [ebp - 8]
test edx, edx
je 0x10044406
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x45c], ecx
jmp 0x10044417
mov edx, dword [ebp - 0x20]
xor eax, eax
mov dword [ebp - 0x460], edx
mov dword [ebp - 0x45c], eax
mov ecx, dword [ebp - 0x460]
mov dword [ebp - 0x3c], ecx
mov edx, 8
imul ecx, edx, 0x11
movsx eax, word [0x100a2110]
cdq
sub eax, dword [ecx + 0x101e1fa8]
mov word [0x100a2110], ax
movzx eax, byte [ebp - 4]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov byte [0x100a207b], al
mov edx, dword [0x100a20dc]
xor eax, eax
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, 0x66
adc esi, 0
mov dword [ebp - 0x71c], edx
mov dword [ebp - 0x718], eax
mov dword [ebp - 0x724], ecx
mov dword [ebp - 0x720], esi
mov edx, dword [ebp - 0x71c]
cmp edx, dword [ebp - 0x724]
jne 0x1004467b
mov eax, dword [ebp - 0x718]
cmp eax, dword [ebp - 0x720]
jne 0x1004467b
movsx ecx, word [ebp - 0x14]
add ecx, 0xa
cmp dword [0x100a2128], ecx
jne 0x1004467b
movsx edx, byte [0x100a2027]
cmp edx, dword [ebp - 0x50]
jb 0x100444d6
mov dword [ebp - 0x310], 1
jmp 0x100444e0
mov dword [ebp - 0x310], 0
movsx eax, byte [0x100a2027]
cmp eax, 0x1c
jl 0x100444f8
mov dword [ebp - 0x314], 1
jmp 0x10044502
mov dword [ebp - 0x314], 0
mov ecx, dword [ebp - 0x310]
cmp ecx, dword [ebp - 0x314]
jne 0x10044515
jmp 0x100445ae
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x72c], edx
mov dword [ebp - 0x728], eax
mov ecx, dword [ebp - 0x72c]
or ecx, dword [ebp - 0x728]
jne 0x10044546
mov dword [ebp - 0x318], 1
jmp 0x10044550
mov dword [ebp - 0x318], 0
movsx edx, byte [0x100a2027]
cmp edx, dword [ebp - 0x44]
jbe 0x10044568
mov dword [ebp - 0x31c], 1
jmp 0x10044572
mov dword [ebp - 0x31c], 0
mov eax, dword [ebp - 0x318]
cmp eax, dword [ebp - 0x31c]
jle 0x100445ae
mov dword [0x100a20e4], 0xc315d36a
mov dword [0x100a20d8], 4
movzx ecx, byte [ebp - 3]
imul edx, ecx, 0xe9c7
mov dword [ebp - 0x44], edx
imul eax, dword [0x100a2128], 0x9cc3533a
mov dword [ebp - 0x48], eax
jmp 0x1004467b
mov dword [0x100a20dc], 0x66
movsx eax, byte [ebp - 1]
cdq
push 0xb3b7
push 0x404c1b10
push edx
push eax
call fcn.10073ef0
mov ecx, eax
movzx eax, byte [ebp - 4]
cdq
and eax, ecx
mov byte [ebp - 4], al
mov edx, dword [0x100a20d8]
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x8c4], ecx
and edx, eax
mov dword [0x100a20d8], edx
mov dl, byte [0x100a2c3c]
mov byte [ebp - 4], dl
movzx eax, word [0x100a211c]
test eax, eax
jne 0x100446e6
mov dword [ebp - 0x324], 1
jmp 0x100446f0
mov dword [ebp - 0x324], 0
movsx eax, word [ebp - 0x1c]
xor eax, dword [ebp - 0x324]
not eax
cdq
mov esi, eax
mov edi, edx
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov ecx, dword [0x100a2108]
mov ebx, dword [0x100a210c]
not ecx
not ebx
push ebx
push ecx
push edx
push eax
call fcn.10073ef0
push edx
push eax
push edi
push esi
call fcn.10073ef0
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
mov edx, 0x7c
mov word [0x100a2110], dx
cmp dword [ebp - 0x40], 0
jne 0x10044754
mov dword [ebp - 0x328], 1
jmp 0x1004475e
mov dword [ebp - 0x328], 0
xor eax, eax
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x34]
sbb edx, eax
mov dword [ebp - 0x73c], ecx
mov dword [ebp - 0x738], edx
mov eax, dword [ebp - 0x73c]
or eax, dword [ebp - 0x738]
jne 0x10044791
mov dword [ebp - 0x32c], 1
jmp 0x1004479b
mov dword [ebp - 0x32c], 0
movsx ecx, word [0x100a20c8]
xor ecx, dword [ebp - 0x328]
add ecx, dword [ebp - 0x32c]
mov word [0x100a20e0], cx
movzx eax, byte [0x100a207a]
xor eax, 0x40
cdq
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
movzx edx, byte [str.HeapSize]
shl edx, 7
mov word [0x100a211c], dx
movsx eax, word [ebp - 0x14]
sub eax, dword [0x100a20f4]
cdq
mov ecx, eax
movsx eax, word [ebp - 0x10]
cdq
add eax, dword [ebp - 0x38]
not eax
sub ecx, eax
mov byte [ebp - 2], cl
movzx edx, byte [ebp - 4]
add edx, dword [ebp - 0x48]
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x490]
imul eax, dword [ebp - 0x330]
cmp dword [ebp - 0x330], eax
je 0x100457a4
xor ecx, ecx
mov dword [ebp - 0x28], 0xbfea
mov dword [ebp - 0x24], ecx
mov edx, 2
mov word [ebp - 0xc], dx
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 0x10]
xor eax, ecx
not eax
add eax, dword [0x100a20d8]
jne 0x10044858
xor edx, edx
mov dword [ebp - 0x468], 1
mov dword [ebp - 0x464], edx
jmp 0x10044863
xorps xmm0, xmm0
movlpd qword [ebp - 0x468], xmm0
movzx eax, word [ebp - 0xc]
cdq
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
xor ecx, ecx
mov esi, dword [0x100a20f8]
sub esi, dword [ebp - 0x48]
mov edi, dword [0x100a20fc]
sbb edi, ecx
not esi
not edi
push edi
push esi
push edx
push eax
call fcn.10073ef0
sub eax, dword [ebp - 0x468]
sbb edx, dword [ebp - 0x464]
mov dword [ebp - 0x744], eax
mov dword [ebp - 0x740], edx
mov edx, dword [ebp - 0x744]
or edx, dword [ebp - 0x740]
jne 0x100448c6
mov dword [ebp - 0x334], 1
jmp 0x100448d0
mov dword [ebp - 0x334], 0
mov eax, dword [ebp - 0x334]
mov dword [ebp - 0x54], eax
mov ecx, 0x69
mov word [0x100a20e0], cx
mov dword [ebp - 0x494], 1
mov edx, dword [ebp - 0x494]
push edx
call dword [sym.imp.USER32.dll_BeginDeferWindowPos]
mov dword [ebp - 0x498], eax
mov eax, dword [ebp - 0x498]
push eax
call dword [sym.imp.USER32.dll_EndDeferWindowPos]
mov dword [ebp - 0x8c8], eax
mov eax, dword [0x100a2128]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, 0xab70964f
adc esi, 0xfd240
mov dword [ebp - 0x74c], eax
mov dword [ebp - 0x748], edx
mov dword [ebp - 0x754], ecx
mov dword [ebp - 0x750], esi
mov edx, dword [ebp - 0x74c]
cmp edx, dword [ebp - 0x754]
jne 0x10044aac
mov eax, dword [ebp - 0x748]
cmp eax, dword [ebp - 0x750]
jne 0x10044aac
movzx ecx, word [0x100a2138]
movsx edx, byte [ebp - 2]
add ecx, edx
cmp ecx, 1
jne 0x10044aac
movsx eax, word [ebp - 8]
movzx ecx, byte [0x100a207b]
sub eax, ecx
movsx edx, word [ebp - 8]
and edx, eax
mov word [ebp - 8], dx
mov eax, dword [0x100a20f8]
or eax, dword [0x100a20fc]
je 0x100449bd
mov ecx, dword [0x100a2148]
mov edx, dword [0x100a214c]
mov dword [ebp - 0x470], ecx
mov dword [ebp - 0x46c], edx
jmp 0x100449ce
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x46c], ecx
mov dl, byte [ebp - 0x470]
mov byte [ebp - 4], dl
mov eax, dword [0x100a20f8]
sub eax, 0x79ea
mov ecx, dword [0x100a20fc]
sbb ecx, 0
mov dword [0x100a2148], eax
mov dword [0x100a214c], ecx
mov eax, dword [ebp - 0x3c]
cdq
mov ecx, eax
mov edx, dword [0x100a2108]
mov eax, dword [0x100a210c]
mov dword [ebp - 0x8cc], eax
add ecx, edx
mov eax, dword [ebp - 0x3c]
cdq
sub eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x100448d9
mov byte [0x100a207b], 0xc5
mov ecx, dword [ebp - 0x44]
xor edx, edx
mov eax, dword [0x100a2130]
mov esi, dword [0x100a2134]
push edx
push ecx
push esi
push eax
call fcn.10073ef0
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
sub ecx, eax
sbb esi, edx
mov dword [0x100a2130], ecx
mov dword [0x100a2134], esi
movzx edx, word [0x100a20e0]
test edx, edx
jne 0x10044aff
mov dword [ebp - 0x33c], 1
jmp 0x10044b09
mov dword [ebp - 0x33c], 0
movsx eax, word [ebp - 8]
imul eax, dword [ebp - 0x33c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x20], 3
movsx ecx, byte [ebp - 1]
add ecx, dword [ebp - 0x20]
movsx edx, byte [ebp - 1]
imul edx, ecx
mov byte [ebp - 1], dl
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov edx, dword [ebp - 0x40]
xor esi, esi
add edx, 0x9ed4c0aa
adc esi, 0xcd57d
mov dword [ebp - 0x764], eax
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x76c], edx
mov dword [ebp - 0x768], esi
mov eax, dword [ebp - 0x764]
cmp eax, dword [ebp - 0x76c]
jne 0x10044c81
mov ecx, dword [ebp - 0x760]
cmp ecx, dword [ebp - 0x768]
jne 0x10044c81
mov eax, dword [0x100a20f4]
cdq
add eax, dword [ebp - 0x5c]
adc edx, dword [ebp - 0x58]
mov dword [ebp - 0x774], eax
mov dword [ebp - 0x770], edx
cmp dword [ebp - 0x774], 1
jne 0x10044c81
cmp dword [ebp - 0x770], 0
jne 0x10044c81
mov edx, dword [0x100a2114]
sub edx, 0x21
mov byte [ebp - 2], dl
mov eax, dword [0x100a2c3c]
xor ecx, ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x40]
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x8d0], ecx
add edx, eax
mov dword [ebp - 0x40], edx
jmp 0x10044aac
mov eax, 4
mov word [ebp - 0x1c], ax
imul ecx, dword [ebp - 0x20], 0x90b184d7
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x38]
xor edx, 0xf1
mov eax, dword [ebp - 0x34]
xor eax, 0
mov dword [ebp - 0x77c], edx
mov dword [ebp - 0x778], eax
mov ecx, dword [ebp - 0x77c]
or ecx, dword [ebp - 0x778]
jne 0x10044cc9
mov dword [ebp - 0x340], 1
jmp 0x10044cd3
mov dword [ebp - 0x340], 0
mov edx, dword [ebp - 0x340]
mov dword [0x100a20f4], edx
mov dword [ebp - 0x20], 2
movsx eax, word [ebp - 0x1c]
mov dword [ebp - 0x344], eax
cmp dword [ebp - 0x344], 4
ja case.default.0x10044d03
mov ecx, dword [ebp - 0x344]
jmp dword [ecx*4 + 0x10045f10]
movsx edx, word [ebp - 0x10]
imul eax, edx, 0x452c
mov byte [ebp - 1], al
mov ecx, 1
imul edx, ecx, 3
mov al, byte [0x100a2138]
mov byte [edx + 0x102b76dc], al
movzx ecx, byte [0x100a207b]
mov edx, dword [0x100a20e4]
sub edx, ecx
mov dword [0x100a20e4], edx
movsx eax, word [0x100a20c8]
add eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
movsx ecx, byte [0x100a2027]
not ecx
movzx edx, word [0x100a20e0]
add ecx, edx
mov word [0x100a211c], cx
mov eax, dword [ebp - 0x54]
shr eax, 8
mov byte [str.HeapSize], al
jmp case.default.0x10044d03
mov eax, dword [0x100a2128]
cdq
xor eax, 0xe3b4d4a4
mov byte [str.HeapSize], al
mov ecx, dword [0x100a2140]
sub ecx, 0xeeaa8457
mov dword [ebp - 0x40], ecx
mov edx, 0xd2
mov word [0x100a2124], dx
movzx eax, byte [ebp - 4]
imul ecx, eax, 0x1caa
mov word [ebp - 8], cx
movsx eax, byte [ebp - 1]
movzx edx, word [ebp - 0xc]
add eax, edx
movsx ecx, byte [ebp - 1]
not ecx
imul ecx, dword [0x100a20f4]
imul eax, ecx
cdq
mov ecx, eax
mov esi, edx
mov eax, dword [0x100a2120]
cdq
mov edi, dword [ebp - 0x54]
xor ebx, ebx
add edi, dword [0x100a20d0]
adc ebx, dword [0x100a20d4]
xor eax, edi
xor edx, ebx
push edx
push eax
push esi
push ecx
call fcn.10073ef0
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
jmp case.default.0x10044d03
imul edx, dword [ebp - 0x48], 0x45cb
mov eax, dword [ebp - 0x44]
add eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x8d8], edx
add ecx, 0xd099
mov dword [0x100a2100], ecx
mov eax, dword [0x100a2104]
shl eax, 4
mov dword [ebp - 0x3c], eax
mov ecx, dword [0x100a20f8]
not ecx
movzx eax, word [0x100a2118]
cdq
mov edx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
mov dword [ebp - 0x8dc], esi
mov esi, dword [0x100a2148]
mov edi, dword [0x100a214c]
mov dword [ebp - 0x8e0], edi
xor edx, esi
sub eax, edx
not eax
sub ecx, eax
mov dword [0x100a2100], ecx
movzx eax, byte [ebp - 3]
imul ecx, eax, 0xc2da71d9
movsx edx, word [0x100a20c8]
sub edx, ecx
mov word [0x100a20c8], dx
movzx eax, word [0x100a2118]
cdq
and eax, dword [0x100a20d0]
mov word [0x100a2118], ax
jmp case.default.0x10044d03
imul eax, dword [0x100a2114], 0x35fce3f5
mov dword [0x100a20dc], eax
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov cl, 4
call fcn.10073f30
mov dword [ebp - 0x44], eax
mov ecx, 2
imul edx, ecx, 0x3a
movsx eax, word [edx + 0x102c1ba8]
movsx ecx, word [ebp - 0x18]
add ecx, eax
mov word [ebp - 0x18], cx
jmp case.default.0x10044d03
mov dword [0x100a20e4], 1
movzx eax, word [0x100a2138]
cdq
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
mov edx, dword [0x100a2130]
mov eax, dword [0x100a2134]
mov ecx, dword [0x100a20ec]
add edx, dword [0x100a20e8]
adc eax, ecx
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
add ecx, edx
adc esi, eax
mov dword [0x100a2130], ecx
mov dword [0x100a2134], esi
mov edx, dword [ebp - 0x38]
mov eax, 4
imul ecx, eax, 0x4a27
mov dword [ecx + 0x10227c08], edx
mov edx, dword [ebp - 0x49c]
movzx eax, word [edx]
cmp eax, 0x5a4d
je 0x10044f65
cmp dword [ebp - 0x7c], 0
jne 0x10044f65
jmp 0x100458de
mov dword [0x100a2120], 0x9c79d8c5
mov byte [ebp - 4], 4
mov ecx, dword [0x100a20d0]
sub ecx, 0x8e56bd03
mov esi, dword [0x100a20d4]
sbb esi, 0x8b96f
movsx eax, byte [ebp - 1]
cdq
push esi
push ecx
push edx
push eax
call fcn.10073ef0
mov byte [ebp - 1], al
imul edx, dword [ebp - 0x50], 0xd8
mov byte [0x100a207b], dl
movzx eax, word [ebp - 0xc]
not eax
sub eax, dword [ebp - 0x3c]
cdq
mov esi, eax
mov edi, edx
movsx eax, word [ebp - 0x10]
cdq
mov ecx, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x2c]
push ebx
push ecx
push edx
push eax
call fcn.10073ef0
push edx
push eax
push edi
push esi
call fcn.10073ef0
not eax
mov byte [ebp - 2], al
movsx edx, word [ebp - 0x10]
test edx, edx
jne 0x10044fed
mov dword [ebp - 0x348], 1
jmp 0x10044ff7
mov dword [ebp - 0x348], 0
movsx eax, byte [ebp - 2]
add eax, dword [ebp - 0x348]
add eax, dword [0x100a2114]
jne 0x10045015
mov dword [ebp - 0x34c], 1
jmp 0x1004501f
mov dword [ebp - 0x34c], 0
movsx ecx, word [0x100a2110]
mov eax, ecx
imul eax, dword [ebp - 0x34c]
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
mov edx, 4
imul eax, edx, 0x891
mov ecx, dword [ebp - 0x4c]
mov dword [eax + 0x102d3e50], ecx
movsx edx, word [ebp - 0x10]
movsx eax, byte [0x100a2027]
add edx, eax
mov word [ebp - 0x10], dx
movzx ecx, byte [ebp - 4]
mov dword [ebp - 0x350], ecx
cmp dword [ebp - 0x350], 4
ja case.default.0x10045078
mov edx, dword [ebp - 0x350]
jmp dword [edx*4 + 0x10045f24]
movzx eax, word [0x100a2138]
movzx ecx, word [0x100a2138]
mov edx, dword [ebp - 0x50]
imul edx, ecx
sub eax, edx
not eax
mov esi, eax
movzx eax, word [ebp - 0xc]
cdq
mov ecx, eax
mov edi, edx
mov ebx, dword [ebp - 0x38]
not ebx
mov eax, dword [ebp - 0x34]
not eax
movzx edx, byte [str.HeapSize]
mov dword [ebp - 0x4a0], eax
mov eax, edx
cdq
add ebx, eax
mov eax, dword [ebp - 0x4a0]
adc eax, edx
push eax
push ebx
push edi
push ecx
call fcn.10073ef0
not eax
add esi, eax
mov word [ebp - 0x14], si
mov eax, dword [0x100a20e8]
mov edx, dword [0x100a20ec]
mov cl, 6
call fcn.10073f30
mov dword [0x100a2108], eax
mov dword [0x100a210c], edx
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x784], eax
mov dword [ebp - 0x780], ecx
mov edx, dword [ebp - 0x784]
or edx, dword [ebp - 0x780]
je 0x1004512d
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x474], ecx
jmp 0x10045141
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x474], edx
mov dl, byte [ebp - 0x478]
mov byte [ebp - 4], dl
jmp case.default.0x10045078
mov eax, dword [ebp - 0x5c]
sub eax, 0xfdd2
mov ecx, dword [ebp - 0x58]
sbb ecx, 0
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], ecx
mov edx, dword [ebp - 0x3c]
sar edx, 8
mov word [0x100a20c8], dx
movsx eax, word [ebp - 8]
movsx ecx, word [ebp - 0x14]
movsx edx, word [ebp - 0x10]
add ecx, edx
not ecx
sub ecx, 0xa6
sub eax, ecx
cdq
mov dword [0x100a20d0], eax
mov dword [0x100a20d4], edx
mov eax, dword [0x100a20f4]
add eax, 1
mov dword [0x100a20f4], eax
jmp case.default.0x10045078
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x8e4], edx
add ecx, 0x6984635b
mov word [0x100a20c8], cx
movsx eax, word [ebp - 8]
imul eax, eax, 0x17680866
cdq
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], edx
mov ecx, dword [ebp - 0x54]
sub ecx, 0xc0b0
mov dword [ebp - 0x48], ecx
movsx edx, byte [ebp - 2]
movsx eax, word [ebp - 0x14]
sub edx, eax
movsx ecx, byte [ebp - 2]
imul ecx, edx
mov byte [ebp - 2], cl
movsx edx, byte [0x100a203b]
mov dword [0x100a20f4], edx
jmp case.default.0x10045078
mov eax, dword [ebp - 0x38]
or eax, dword [ebp - 0x34]
jne 0x10045223
xor ecx, ecx
mov dword [ebp - 0x78c], 1
mov dword [ebp - 0x788], ecx
jmp 0x1004522e
xorps xmm0, xmm0
movlpd qword [ebp - 0x78c], xmm0
movzx edx, word [0x100a211c]
mov eax, dword [ebp - 0x3c]
sub eax, edx
movsx ecx, byte [ebp - 2]
movsx edx, byte [0x100a2027]
sub ecx, edx
sub eax, ecx
cdq
mov ecx, eax
movzx eax, byte [ebp - 4]
mov edx, dword [0x100a2114]
not edx
imul eax, edx
cdq
mov edx, dword [ebp - 0x5c]
add edx, dword [ebp - 0x78c]
sub eax, edx
add ecx, eax
mov word [ebp - 0x18], cx
cmp dword [ebp - 0x3c], 0
je 0x10045280
mov eax, dword [0x100a20dc]
mov dword [ebp - 0x354], eax
jmp 0x1004528d
movzx ecx, byte [0x100a207a]
mov dword [ebp - 0x354], ecx
mov edx, dword [ebp - 0x354]
mov dword [0x100a2114], edx
jmp case.default.0x10045078
movsx eax, word [ebp - 0x1c]
cdq
sub eax, 0xb06ebb17
sbb edx, 0x4d514
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x8e8], ecx
add eax, 0xcf
mov dword [ebp - 0x3c], eax
mov edx, dword [0x100a2148]
mov eax, dword [0x100a214c]
mov ecx, dword [0x100a2120]
add ecx, dword [ebp - 0x40]
xor esi, esi
mov dword [ebp - 0x794], edx
mov dword [ebp - 0x790], eax
mov dword [ebp - 0x79c], ecx
mov dword [ebp - 0x798], esi
mov edx, dword [ebp - 0x794]
cmp edx, dword [ebp - 0x79c]
jne 0x10045680
mov eax, dword [ebp - 0x790]
cmp eax, dword [ebp - 0x798]
jne 0x10045680
movsx ecx, byte [str.y4The_server_is_requ]
test ecx, ecx
jne 0x1004533e
movzx edx, byte [str.HeapSize]
test edx, edx
jne 0x1004533e
mov dword [ebp - 0x358], 0
jmp 0x10045348
mov dword [ebp - 0x358], 1
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x7a4], eax
mov dword [ebp - 0x7a0], ecx
mov edx, dword [ebp - 0x7a4]
or edx, dword [ebp - 0x7a0]
jne 0x10045374
mov dword [ebp - 0x35c], 1
jmp 0x1004537e
mov dword [ebp - 0x35c], 0
mov eax, dword [ebp - 0x358]
imul eax, dword [ebp - 0x35c]
test eax, eax
je 0x100453e8
mov ecx, dword [0x100a20dc]
shl ecx, 7
mov dword [ebp - 0x48], ecx
movsx eax, byte [ebp - 2]
cdq
xor eax, dword [ebp - 0x5c]
xor edx, dword [ebp - 0x58]
and eax, dword [ebp - 0x5c]
and edx, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
movzx edx, word [0x100a20e0]
mov dword [0x100a2128], edx
movsx eax, byte [ebp - 1]
test eax, eax
je 0x100453d2
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x360], ecx
jmp 0x100453df
movsx edx, byte [0x100a203b]
mov dword [ebp - 0x360], edx
mov al, byte [ebp - 0x360]
mov byte [ebp - 4], al
mov cx, word [0x100a20f0]
mov word [ebp - 0x18], cx
mov eax, dword [0x100a20f4]
cdq
mov ecx, dword [0x100a2130]
mov esi, dword [0x100a2134]
push edx
push eax
push esi
push ecx
call fcn.10073ef0
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 [0x100a2c3c]
xor eax, eax
mov dword [0x100a20e8], edx
mov dword [0x100a20ec], eax
movsx ecx, byte [ebp - 1]
sub ecx, dword [0x100a2120]
movsx edx, byte [ebp - 1]
and edx, ecx
mov byte [ebp - 1], dl
movsx eax, byte [str.y4The_server_is_requ]
cdq
mov ecx, dword [ebp - 0x5c]
add ecx, 0xa
mov esi, dword [ebp - 0x58]
adc esi, 0
mov dword [ebp - 0x7ac], eax
mov dword [ebp - 0x7a8], edx
mov dword [ebp - 0x7b4], ecx
mov dword [ebp - 0x7b0], esi
mov edx, dword [ebp - 0x7ac]
cmp edx, dword [ebp - 0x7b4]
jne 0x10045680
mov eax, dword [ebp - 0x7a8]
cmp eax, dword [ebp - 0x7b0]
jne 0x10045680
call dword [sym.imp.USER32.dll_GetCapture]
mov byte [0x100a2027], al
movsx ecx, byte [0x100a2027]
test ecx, ecx
je 0x1004554d
movzx eax, word [0x100a2124]
sub eax, 0x79a2
cdq
mov dword [0x100a2130], eax
mov dword [0x100a2134], edx
mov byte [ebp - 1], 0xf3
cmp dword [ebp - 0x20], 0
jne 0x100454ec
mov dword [ebp - 0x364], 1
jmp 0x100454f6
mov dword [ebp - 0x364], 0
movsx eax, word [ebp - 0x14]
cdq
mov ecx, eax
sub ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x50]
imul edx, dword [ebp - 0x364]
sub ecx, edx
movzx eax, byte [0x100a207a]
add eax, 0x36
not eax
cdq
mov edx, dword [ebp - 0x38]
not edx
add eax, edx
xor ecx, eax
mov byte [ebp - 3], cl
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
push 0xb3fef
push 0xe47b111a
push ecx
push eax
call fcn.10073ef0
mov ecx, eax
movzx eax, byte [ebp - 3]
cdq
sub eax, ecx
mov byte [ebp - 3], al
jmp 0x100455fb
cmp dword [0x100a20dc], 0
je 0x10045599
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [0x100a2108]
mov esi, dword [0x100a210c]
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov byte [str.HeapSize], al
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x8ec], eax
sub edx, 0x58
mov word [ebp - 0xc], dx
mov cx, word [0x100a2100]
mov word [0x100a2124], cx
jmp 0x100455fb
cmp dword [0x100a2128], 0
je 0x100455fb
movzx eax, word [0x100a20e0]
cdq
mov edx, dword [0x100a2108]
mov ecx, dword [0x100a210c]
mov dword [ebp - 0x8f0], ecx
not edx
add eax, edx
mov dword [0x100a2114], eax
mov edx, dword [0x100a2120]
sub edx, dword [0x100a20dc]
mov eax, dword [0x100a2120]
sub eax, edx
mov dword [0x100a2120], eax
movzx ecx, byte [ebp - 4]
mov edx, dword [ebp - 0x44]
xor edx, ecx
mov eax, dword [ebp - 0x44]
sub eax, edx
mov dword [ebp - 0x44], eax
movsx ecx, byte [ebp - 1]
sub ecx, dword [0x100a2100]
mov byte [ebp - 1], cl
jmp 0x10044f65
movsx edx, byte [str.y4The_server_is_requ]
test edx, edx
je 0x10045722
mov eax, dword [0x100a20f4]
add eax, 0x788b878a
mov dword [ebp - 0x44], eax
movzx ecx, word [0x100a2124]
add ecx, 0x5cc3
movsx edx, byte [ebp - 2]
sub edx, ecx
mov byte [ebp - 2], dl
movzx eax, word [0x100a2124]
imul ecx, eax, 0x39
mov edx, dword [0x100a2104]
add edx, ecx
mov dword [0x100a2104], edx
mov dword [ebp - 0x44], 8
mov eax, dword [0x100a2140]
or eax, dword [0x100a2144]
jne 0x100456ea
mov dword [ebp - 0x368], 1
jmp 0x100456f4
mov dword [ebp - 0x368], 0
movzx ecx, byte [ebp - 4]
add ecx, dword [ebp - 0x368]
mov word [ebp - 0xc], cx
mov edx, dword [0x100a20e8]
mov eax, dword [0x100a20ec]
mov dword [ebp - 0x8f4], eax
sub edx, 0xe4b0c698
mov word [0x100a2138], dx
jmp 0x1004577e
movzx eax, byte [ebp - 3]
cdq
mov ecx, dword [0x100a20e8]
mov esi, dword [0x100a20ec]
add ecx, eax
adc esi, edx
mov dword [0x100a20e8], ecx
mov dword [0x100a20ec], esi
movsx edx, word [ebp - 0x10]
add edx, 0x1e
mov dword [0x100a2104], edx
movsx eax, byte [str.y4The_server_is_requ]
sar eax, 6
mov dword [ebp - 0x20], eax
imul ecx, dword [ebp - 0x50], 0xe4
mov word [0x100a20e0], cx
mov edx, dword [0x100a2c3c]
xor eax, eax
mov dword [0x100a20f8], edx
mov dword [0x100a20fc], eax
push 0
lea ecx, [ebp - 0x8f8]
push ecx
mov edx, dword [ebp - 0x36c]
push edx
mov eax, dword [ebp - 0x78]
push eax
mov ecx, dword [ebp - 0xec]
push ecx
push 0
push 0
call fcn.100014a0
call eax
movzx edx, byte [0x100a207b]
movsx eax, byte [0x100a2027]
cmp edx, eax
je 0x10045809
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je 0x10045804
mov ecx, dword [ebp - 0x88]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
mov dword [ebp - 0x8fc], eax
mov edx, dword [ebp - 0x88]
push edx
call dword [sym.imp.USER32.dll_IsWindowEnabled]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x88]
push eax
call dword [sym.imp.USER32.dll_IsWindowUnicode]
mov dword [ebp - 0x904], eax
jmp 0x100458c8
movzx ecx, word [0x100a2118]
sub ecx, 0x208a
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
not edx
not eax
mov ecx, dword [ebp - 0x20]
xor esi, esi
push esi
push ecx
push eax
push edx
call fcn.10073ef0
mov dword [ebp - 0x44], eax
movzx edx, word [0x100a211c]
add edx, 0x5860ef33
xor eax, eax
mov dword [0x100a2130], edx
mov dword [0x100a2134], eax
movsx ecx, byte [0x100a2027]
test ecx, ecx
jne 0x10045865
mov dword [ebp - 0x370], 1
jmp 0x1004586f
mov dword [ebp - 0x370], 0
movsx edx, word [ebp - 0x18]
movzx eax, byte [str.HeapSize]
add edx, eax
imul edx, dword [ebp - 0x370]
mov word [ebp - 0x18], dx
movzx eax, word [0x100a2118]
cdq
add eax, dword [0x100a2140]
adc edx, dword [0x100a2144]
xor eax, dword [0x100a2140]
xor edx, dword [0x100a2144]
mov dword [0x100a2140], eax
mov dword [0x100a2144], edx
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x908], edx
add ecx, 0x1c
mov word [0x100a20f0], cx
mov eax, dword [ebp - 0x7c]
add eax, 1
mov dword [ebp - 0x7c], eax
mov ecx, 1
test ecx, ecx
jne 0x10042831
mov edx, dword [ebp - 0xec]
push edx
push 0
push 0
call fcn.100016e0
call eax
mov eax, dword [ebp - 0x74]
push eax
push 0
push 0
call fcn.10001380
call eax
push 0x8000
push 0
mov ecx, dword [ebp - 0x78]
push ecx
push 0
push 0
call fcn.100012f0
call eax
cmp dword [ebp - 0x7c], 0
jne 0x10045922
xor eax, eax
jmp 0x10045eba
mov edx, 0x1a
mov word [0x100a2110], dx
movzx eax, word [ebp - 0xc]
movzx ecx, byte [ebp - 3]
cmp eax, ecx
jge 0x10045946
mov dword [ebp - 0x374], 1
jmp 0x10045950
mov dword [ebp - 0x374], 0
movzx edx, word [ebp - 0xc]
cmp edx, 0x22
jge 0x10045965
mov dword [ebp - 0x378], 1
jmp 0x1004596f
mov dword [ebp - 0x378], 0
mov eax, dword [ebp - 0x374]
cmp eax, dword [ebp - 0x378]
jle 0x10045b42
mov ecx, dword [ebp - 0x38]
or ecx, dword [ebp - 0x34]
je 0x10045a3a
movzx edx, word [0x100a2118]
push edx
call dword [sym.imp.KERNEL32.dll_IsValidCodePage]
mov word [0x100a20e0], ax
movzx eax, byte [0x100a207a]
test eax, eax
jne 0x100459b8
mov dword [ebp - 0x300], 1
jmp 0x100459c2
mov dword [ebp - 0x300], 0
cmp dword [ebp - 0x300], 0x564fe07b
je 0x10045a03
mov ecx, dword [str.040904B0]
mov dword [ebp - 0x7e8], ecx
mov edx, dword [0x10086960]
mov dword [ebp - 0x7e4], edx
mov al, byte [0x10086964]
mov byte [ebp - 0x7e0], al
lea ecx, [ebp - 0x7e8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp - 0x44], eax
jmp 0x10045a35
movzx edx, byte [0x100a207a]
cmp edx, dword [ebp - 0x40]
jb 0x10045a35
mov eax, 1
imul ecx, eax, 0xa73b
movzx edx, byte [ecx + 0x100e3500]
mov dword [ebp - 0x54], edx
movzx eax, word [ebp - 0xc]
movsx ecx, word [0x100a2110]
add eax, ecx
mov word [ebp - 0xc], ax
jmp 0x10045b40
mov edx, 0x17ce9ed8
or edx, 0x38a8f
je 0x10045b40
mov eax, dword [ebp - 0x20]
xor ecx, ecx
add eax, 0x6742a93d
adc ecx, 0xb50d6
mov edx, dword [0x100a2148]
mov esi, dword [0x100a214c]
add edx, eax
adc esi, ecx
mov dword [0x100a2148], edx
mov dword [0x100a214c], esi
movsx eax, byte [ebp - 1]
and eax, dword [ebp - 0x3c]
movsx ecx, byte [ebp - 1]
imul ecx, eax
mov byte [ebp - 1], cl
movzx edx, byte [ebp - 4]
sub edx, 0x6354541d
movzx eax, byte [ebp - 3]
imul eax, edx
mov byte [ebp - 3], al
mov ecx, dword [ebp - 0x4c]
not ecx
movsx edx, word [0x100a20c8]
imul ecx, edx
test ecx, ecx
jne 0x10045abb
mov dword [ebp - 0x37c], 1
jmp 0x10045ac5
mov dword [ebp - 0x37c], 0
movsx eax, byte [ebp - 1]
sub eax, dword [ebp - 0x37c]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [0x100a2120]
add eax, dword [ebp - 0x20]
xor ecx, ecx
mov edx, dword [ebp - 0x34]
push edx
mov edx, dword [ebp - 0x38]
push edx
push ecx
push eax
call fcn.10073ef0
add esi, eax
adc edi, edx
mov dword [ebp - 0x7bc], esi
mov dword [ebp - 0x7b8], edi
mov eax, dword [ebp - 0x7bc]
or eax, dword [ebp - 0x7b8]
jne 0x10045b17
mov dword [ebp - 0x380], 1
jmp 0x10045b21
mov dword [ebp - 0x380], 0
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x3c], ecx
mov eax, dword [0x100a2120]
sub eax, 0x236eb7f1
cdq
mov dword [0x100a20e8], eax
mov dword [0x100a20ec], edx
jmp 0x10045bb1
cmp dword [0x100a20d8], 0
je 0x10045bb1
movsx edx, word [ebp - 8]
test edx, edx
je 0x10045bb1
movzx eax, word [0x100a2124]
cdq
xor eax, 0x36146c1e
mov byte [str.HeapSize], al
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x90c], ecx
sub eax, 0xf6aa53db
mov word [ebp - 0x1c], ax
movzx edx, byte [ebp - 3]
mov eax, dword [0x100a2114]
add eax, edx
mov ecx, dword [0x100a2114]
imul ecx, eax
mov dword [0x100a2114], ecx
mov edx, dword [0x100a2c3c]
mov dword [ebp - 0x40], edx
movsx eax, word [0x100a2110]
sub eax, dword [ebp - 0x3c]
mov byte [0x100a207a], al
movsx eax, word [0x100a2110]
cdq
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x2c]
add ecx, 1
adc esi, 0
mov dword [ebp - 0x7c4], eax
mov dword [ebp - 0x7c0], edx
mov dword [ebp - 0x7cc], ecx
mov dword [ebp - 0x7c8], esi
mov edx, dword [ebp - 0x7c4]
cmp edx, dword [ebp - 0x7cc]
jne 0x10045e28
mov eax, dword [ebp - 0x7c0]
cmp eax, dword [ebp - 0x7c8]
jne 0x10045e28
movzx eax, word [ebp - 0xc]
cdq
add eax, 0x92943b46
mov dword [ebp - 0x4c], eax
mov ecx, dword [0x100a2100]
add ecx, 0x2e39f5d6
mov word [ebp - 0x14], cx
movzx edx, byte [0x100a207b]
test edx, edx
je 0x10045c42
mov eax, dword [0x100a2148]
mov ecx, dword [0x100a214c]
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x484], ecx
jmp 0x10045c53
movsx eax, byte [ebp - 2]
cdq
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x484], edx
mov dx, word [ebp - 0x488]
mov word [ebp - 0x1c], dx
movzx eax, byte [ebp - 3]
add eax, 0x1418c5da
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
movsx eax, word [ebp - 8]
add eax, dword [ebp - 0x50]
movsx ecx, word [ebp - 8]
sub ecx, eax
mov word [ebp - 8], cx
movsx eax, word [ebp - 0x14]
cdq
mov ecx, dword [0x100a2150]
mov esi, dword [0x100a2154]
xor ecx, eax
xor esi, edx
mov dword [ebp - 0x7d4], ecx
mov dword [ebp - 0x7d0], esi
mov edx, dword [ebp - 0x7d4]
or edx, dword [ebp - 0x7d0]
jne 0x10045cba
mov dword [ebp - 0xf8], 1
jmp 0x10045cc4
mov dword [ebp - 0xf8], 0
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x7dc], eax
mov dword [ebp - 0x7d8], ecx
mov edx, dword [ebp - 0x7dc]
or edx, dword [ebp - 0x7d8]
jne 0x10045cf0
mov dword [ebp - 0x388], 1
jmp 0x10045cfa
mov dword [ebp - 0x388], 0
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0x388]
sub ecx, dword [ebp - 0x40]
movsx edx, word [ebp - 8]
sub edx, dword [0x100a2120]
sub ecx, edx
not ecx
sub eax, ecx
not eax
mov byte [ebp - 4], al
movsx eax, word [ebp - 8]
cdq
mov esi, eax
mov edi, edx
mov eax, dword [0x100a20d0]
not eax
mov ecx, dword [0x100a20d4]
not ecx
mov edx, dword [0x100a2108]
mov ebx, dword [0x100a210c]
push ecx
push eax
push ebx
push edx
call fcn.10073ef0
sub esi, eax
sbb edi, edx
mov dword [0x100a20e8], esi
mov dword [0x100a20ec], edi
mov eax, 0x5c
mov word [0x100a2110], ax
movzx ecx, byte [0x100a207a]
cmp ecx, 1
jne 0x10045e28
movsx eax, word [0x100a20f0]
cdq
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov eax, dword [ebp - 0x34]
sbb eax, edx
push eax
push ecx
mov ecx, dword [ebp - 0x34]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call fcn.10073ef0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
mov byte [0x100a207b], 0xcd
movsx eax, word [0x100a20f0]
cdq
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov dword [0x100a20e4], 2
mov eax, dword [0x100a20e8]
mov ecx, dword [0x100a20ec]
mov dword [ebp - 0x910], ecx
mov edx, 4
imul ecx, edx, 0x2539
mov dword [ecx + 0x100b35b8], eax
jmp 0x10045e28
mov eax, 0x1a
mov word [0x100a2110], ax
mov ecx, dword [0x100a20d8]
xor edx, edx
add ecx, 0x4cb331e9
adc edx, 0xb24c9
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], edx
mov eax, dword [0x100a20d8]
sub eax, 0x700a
mov word [ebp - 0x18], ax
mov ecx, dword [ebp - 0x4c]
xor esi, esi
movzx eax, word [ebp - 0xc]
cdq
mov edi, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x24]
sub edi, eax
sbb ebx, edx
push ebx
push edi
push esi
push ecx
call fcn.10073ef0
mov byte [0x100a207b], al
mov edx, 0x1bd3
mov word [ebp - 0x14], dx
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x34]
sbb edx, eax
push edx
push ecx
mov eax, dword [ebp - 0x34]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.10073ef0
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edx
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx edx, ax
mov dword [ebp - 0x48], edx
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8