Function at 0x10016490
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1003549a
mov eax, dword fs:[0]
push eax
mov eax, 0x1b50
call fcn.10034e00
mov eax, dword [0x1003b010]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3d4], 0
mov byte [ebp - 0x6b0], 0x61
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.VClient016]
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6af], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.VClient016]
push ecx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6ae], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.VClient016]
push eax
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6ad], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.VClient016]
push eax
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6ac], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.VClient016]
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6ab], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.VClient016]
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6aa], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.VClient016]
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6a9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.VClient016]
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6a8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.VClient016]
push ecx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6a7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.VClient016]
push ecx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0x6a6], al
xor edx, edx
mov byte [ebp - 0x6a5], dl
mov byte [ebp - 0x6a4], 0
movzx eax, byte [ebp - 0x6a4]
test eax, eax
jne 0x100166db
mov dword [ebp - 0xc34], 0
jmp 0x10016652
mov ecx, dword [ebp - 0xc34]
add ecx, 1
mov dword [ebp - 0xc34], ecx
cmp dword [ebp - 0xc34], 0xa
jae 0x100166b8
lea edx, [ebp - 0x6af]
mov dword [ebp - 0x149c], edx
mov eax, dword [ebp - 0xc34]
push eax
mov ecx, dword [ebp - 0x149c]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x6b0]
call fcn.100030a0
mov byte [ebp - 0xb4d], al
lea eax, [ebp - 0x6af]
mov dword [ebp - 0x16d8], eax
mov ecx, dword [ebp - 0xc34]
push ecx
mov ecx, dword [ebp - 0x16d8]
call fcn.100030c0
mov dl, byte [ebp - 0xb4d]
mov byte [eax], dl
jmp 0x10016643
lea eax, [ebp - 0x6af]
mov dword [ebp - 0x16dc], eax
push 0xa
mov ecx, dword [ebp - 0x16dc]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x6a4], 1
lea ecx, [ebp - 0x6af]
call fcn.100030b0
mov dword [ebp - 0xf58], eax
mov byte [ebp - 0x630], 0x40
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x62a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x629], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x628], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x627], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0x626], al
xor eax, eax
mov byte [ebp - 0x625], al
mov byte [ebp - 0x624], 0
movzx ecx, byte [ebp - 0x624]
test ecx, ecx
jne 0x100168fe
mov dword [ebp - 0xc88], 0
jmp 0x10016875
mov edx, dword [ebp - 0xc88]
add edx, 1
mov dword [ebp - 0xc88], edx
cmp dword [ebp - 0xc88], 0xa
jae 0x100168db
lea eax, [ebp - 0x62f]
mov dword [ebp - 0x16e0], eax
mov ecx, dword [ebp - 0xc88]
push ecx
mov ecx, dword [ebp - 0x16e0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x630]
call fcn.100030a0
mov byte [ebp - 0xb4f], al
lea ecx, [ebp - 0x62f]
mov dword [ebp - 0x16e4], ecx
mov edx, dword [ebp - 0xc88]
push edx
mov ecx, dword [ebp - 0x16e4]
call fcn.100030c0
mov cl, byte [ebp - 0xb4f]
mov byte [eax], cl
jmp 0x10016866
lea edx, [ebp - 0x62f]
mov dword [ebp - 0x16e8], edx
push 0xa
mov ecx, dword [ebp - 0x16e8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x624], 1
lea ecx, [ebp - 0x62f]
call fcn.100030b0
mov dword [ebp - 0xf54], eax
xor eax, eax
je 0x100173d4
mov ecx, dword [ebp - 0xf54]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x16fc], eax
mov byte [ebp - 0x784], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x783], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x782], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x781], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x780], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77f], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77e], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77d], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77c], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77b], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x77a], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x779], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x778], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x777], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x776], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0x775], al
xor ecx, ecx
mov byte [ebp - 0x774], cl
mov byte [ebp - 0x773], 0
movzx edx, byte [ebp - 0x773]
test edx, edx
jne 0x10016be1
mov dword [ebp - 0xc8c], 0
jmp 0x10016b58
mov eax, dword [ebp - 0xc8c]
add eax, 1
mov dword [ebp - 0xc8c], eax
cmp dword [ebp - 0xc8c], 0xf
jae 0x10016bbe
lea ecx, [ebp - 0x783]
mov dword [ebp - 0x16ec], ecx
mov edx, dword [ebp - 0xc8c]
push edx
mov ecx, dword [ebp - 0x16ec]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x784]
call fcn.100030a0
mov byte [ebp - 0xb50], al
lea edx, [ebp - 0x783]
mov dword [ebp - 0x16f0], edx
mov eax, dword [ebp - 0xc8c]
push eax
mov ecx, dword [ebp - 0x16f0]
call fcn.100030c0
mov cl, byte [ebp - 0xb50]
mov byte [eax], cl
jmp 0x10016b49
lea edx, [ebp - 0x783]
mov dword [ebp - 0x16f4], edx
push 0xf
mov ecx, dword [ebp - 0x16f4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x773], 1
lea ecx, [ebp - 0x783]
call fcn.100030b0
mov dword [ebp - 0x16f8], eax
mov eax, dword [ebp - 0x16f8]
push eax
mov ecx, dword [ebp - 0x16fc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc90], eax
mov edx, dword [ebp - 0xc90]
add edx, 4
mov dword [ebp - 0xc90], edx
mov eax, dword [ebp - 0xc90]
mov dword [ebp - 0xba8], eax
mov ecx, dword [ebp - 0xba8]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x1700], edx
mov eax, dword [ebp - 0xba8]
add eax, 5
mov dword [ebp - 0xba8], eax
mov ecx, dword [ebp - 0xba8]
add ecx, dword [ebp - 0x1700]
mov dword [ebp - 0xba8], ecx
mov edx, dword [ebp - 0xba8]
mov dword [ebp - 0xc90], edx
mov dword [ebp - 0xe54], 0
mov dword [ebp - 0xf4c], 0xffffffff
mov eax, dword [ebp - 0xc90]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x6d4], edx
jmp 0x10016c99
mov eax, dword [ebp - 0x6d4]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6d4], ecx
cmp dword [ebp - 0x6d4], 0
je 0x1001739e
push 0x40
push 0
lea edx, [ebp - 0x290]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6d0], 0
mov dword [ebp - 0x6d0], 0
jmp 0x10016cde
mov eax, dword [ebp - 0x6d0]
add eax, 1
mov dword [ebp - 0x6d0], eax
mov ecx, dword [ebp - 0x6d4]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6d0]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x10016d37
mov edx, dword [ebp - 0x6d4]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6d0]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10016d37
mov eax, dword [ebp - 0x6d4]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6d0]
mov eax, dword [ebp - 0x6d0]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x290], cl
jmp 0x10016ccf
mov edx, dword [ebp - 0x6d0]
mov dword [ebp - 0x10e4], edx
cmp dword [ebp - 0x10e4], 0x40
jae 0x10016d4e
jmp 0x10016d53
call fcn.100341c5
mov eax, dword [ebp - 0x10e4]
mov byte [ebp + eax - 0x290], 0
mov ecx, dword [ebp - 0xf58]
mov dword [ebp - 0xd88], ecx
lea edx, [ebp - 0x290]
mov dword [ebp - 0xd8c], edx
mov eax, dword [ebp - 0xd8c]
mov cl, byte [eax]
mov byte [ebp - 0xb51], cl
mov edx, dword [ebp - 0xd88]
cmp cl, byte [edx]
jne 0x10016dd7
cmp byte [ebp - 0xb51], 0
je 0x10016dcb
mov eax, dword [ebp - 0xd8c]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb52], cl
mov edx, dword [ebp - 0xd88]
cmp cl, byte [edx + 1]
jne 0x10016dd7
add dword [ebp - 0xd8c], 2
add dword [ebp - 0xd88], 2
cmp byte [ebp - 0xb52], 0
jne 0x10016d79
mov dword [ebp - 0xef0], 0
jmp 0x10016de2
sbb eax, eax
or eax, 1
mov dword [ebp - 0xef0], eax
mov ecx, dword [ebp - 0xef0]
mov dword [ebp - 0x1704], ecx
cmp dword [ebp - 0x1704], 0
jne 0x10017399
mov edx, dword [ebp - 0x6d4]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1a3c]
call fcn.10007f70
mov dword [ebp - 4], 0
mov byte [ebp - 0x620], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x61a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x619], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x618], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x617], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0x616], al
xor eax, eax
mov byte [ebp - 0x615], al
mov byte [ebp - 0x614], 0
movzx ecx, byte [ebp - 0x614]
test ecx, ecx
jne 0x10017029
mov dword [ebp - 0xc94], 0
jmp 0x10016fa0
mov edx, dword [ebp - 0xc94]
add edx, 1
mov dword [ebp - 0xc94], edx
cmp dword [ebp - 0xc94], 0xa
jae 0x10017006
lea eax, [ebp - 0x61f]
mov dword [ebp - 0x1708], eax
mov ecx, dword [ebp - 0xc94]
push ecx
mov ecx, dword [ebp - 0x1708]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x620]
call fcn.100030a0
mov byte [ebp - 0xb53], al
lea ecx, [ebp - 0x61f]
mov dword [ebp - 0x170c], ecx
mov edx, dword [ebp - 0xc94]
push edx
mov ecx, dword [ebp - 0x170c]
call fcn.100030c0
mov cl, byte [ebp - 0xb53]
mov byte [eax], cl
jmp 0x10016f91
lea edx, [ebp - 0x61f]
mov dword [ebp - 0x1710], edx
push 0xa
mov ecx, dword [ebp - 0x1710]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x614], 1
lea ecx, [ebp - 0x61f]
call fcn.100030b0
mov dword [ebp - 0x1714], eax
push 0
mov eax, dword [ebp - 0x1714]
push eax
lea ecx, [ebp - 0x1a3c]
call fcn.1002b450
mov dword [ebp - 0xd84], eax
cmp dword [ebp - 0xd84], 0xffffffff
je 0x10017309
mov byte [ebp - 0x610], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x60a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x609], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x608], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x607], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0x606], al
xor eax, eax
mov byte [ebp - 0x605], al
mov byte [ebp - 0x604], 0
movzx ecx, byte [ebp - 0x604]
test ecx, ecx
jne 0x10017273
mov dword [ebp - 0xc98], 0
jmp 0x100171ea
mov edx, dword [ebp - 0xc98]
add edx, 1
mov dword [ebp - 0xc98], edx
cmp dword [ebp - 0xc98], 0xa
jae 0x10017250
lea eax, [ebp - 0x60f]
mov dword [ebp - 0x1718], eax
mov ecx, dword [ebp - 0xc98]
push ecx
mov ecx, dword [ebp - 0x1718]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x610]
call fcn.100030a0
mov byte [ebp - 0xb54], al
lea ecx, [ebp - 0x60f]
mov dword [ebp - 0x171c], ecx
mov edx, dword [ebp - 0xc98]
push edx
mov ecx, dword [ebp - 0x171c]
call fcn.100030c0
mov cl, byte [ebp - 0xb54]
mov byte [eax], cl
jmp 0x100171db
lea edx, [ebp - 0x60f]
mov dword [ebp - 0x1720], edx
push 0xa
mov ecx, dword [ebp - 0x1720]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x604], 1
lea ecx, [ebp - 0x60f]
call fcn.100030b0
mov dword [ebp - 0x1724], eax
mov eax, dword [ebp - 0xd84]
push eax
mov ecx, dword [ebp - 0x1724]
push ecx
lea ecx, [ebp - 0x1a3c]
call fcn.1002b3f0
mov dword [ebp - 0xe50], eax
cmp dword [ebp - 0xe50], 0xffffffff
je 0x100172c0
mov edx, dword [ebp - 0xe50]
sub edx, dword [ebp - 0xd84]
mov dword [ebp - 0xf40], edx
jmp 0x100172cc
mov eax, dword [ebp - 0xe50]
mov dword [ebp - 0xf40], eax
mov ecx, dword [ebp - 0xf40]
push ecx
mov edx, dword [ebp - 0xd84]
push edx
lea eax, [ebp - 0x1a24]
push eax
lea ecx, [ebp - 0x1a3c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 1
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1a24]
mov dword [ebp - 0xf44], edx
jmp 0x1001732f
lea ecx, [ebp - 0x1a24]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 1
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1a24]
mov dword [ebp - 0xf44], ecx
mov edx, dword [ebp - 0xf44]
mov dword [ebp - 0x1728], edx
mov ecx, dword [ebp - 0x1728]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xf48], eax
lea ecx, [ebp - 0x1a24]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a3c]
call fcn.10007f20
mov eax, dword [ebp - 0xf48]
cmp eax, dword [ebp - 0xf4c]
jle 0x10017399
mov ecx, dword [ebp - 0xf48]
mov dword [ebp - 0xf4c], ecx
mov edx, dword [ebp - 0x6d4]
mov dword [ebp - 0xe54], edx
jmp 0x10016c8a
cmp dword [ebp - 0xe54], 0
jne 0x100173b3
mov dword [ebp - 0xf50], 0
jmp 0x100173c3
mov eax, dword [ebp - 0xe54]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xf50], eax
mov edx, dword [ebp - 0xf50]
mov dword [ebp - 0xf5c], edx
jmp 0x10017705
mov byte [ebp - 0x7d4], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7d3], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7d2], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7d1], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7d0], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7cf], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7ce], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7cd], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7cc], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7cb], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7ca], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7c9], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7c8], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7c7], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7c6], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0x7c5], al
xor edx, edx
mov byte [ebp - 0x7c4], dl
mov byte [ebp - 0x7c3], 0
movzx eax, byte [ebp - 0x7c3]
test eax, eax
jne 0x1001768b
mov dword [ebp - 0xc9c], 0
jmp 0x10017602
mov ecx, dword [ebp - 0xc9c]
add ecx, 1
mov dword [ebp - 0xc9c], ecx
cmp dword [ebp - 0xc9c], 0xf
jae 0x10017668
lea edx, [ebp - 0x7d3]
mov dword [ebp - 0x172c], edx
mov eax, dword [ebp - 0xc9c]
push eax
mov ecx, dword [ebp - 0x172c]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x7d4]
call fcn.100030a0
mov byte [ebp - 0xb55], al
lea eax, [ebp - 0x7d3]
mov dword [ebp - 0x1730], eax
mov ecx, dword [ebp - 0xc9c]
push ecx
mov ecx, dword [ebp - 0x1730]
call fcn.100030c0
mov dl, byte [ebp - 0xb55]
mov byte [eax], dl
jmp 0x100175f3
lea eax, [ebp - 0x7d3]
mov dword [ebp - 0x1734], eax
push 0xf
mov ecx, dword [ebp - 0x1734]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x7c3], 1
lea ecx, [ebp - 0x7d3]
call fcn.100030b0
mov dword [ebp - 0x1738], eax
mov ecx, dword [ebp - 0xf54]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x173c], eax
mov edx, dword [ebp - 0x1738]
push edx
mov eax, dword [ebp - 0x173c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1740], eax
mov ecx, dword [ebp - 0x1740]
mov dword [ebp - 0x1744], ecx
mov edx, dword [ebp - 0x1744]
mov dword [ebp - 0x1748], edx
push 0
mov eax, dword [ebp - 0xf58]
push eax
call dword [ebp - 0x1748]
add esp, 8
mov dword [ebp - 0x174c], eax
mov ecx, dword [ebp - 0x174c]
mov dword [ebp - 0xf5c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xf5c]
mov dword [edx + 0x10], eax
mov byte [ebp - 0xad0], 0x4d
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VClientEntityList003]
push eax
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xacf], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xace], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xacd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xacc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VClientEntityList003]
push eax
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xacb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VClientEntityList003]
push eax
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xaca], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VClientEntityList003]
push eax
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VClientEntityList003]
push eax
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac6], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac5], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac4], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac3], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac2], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac1], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VClientEntityList003]
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xac0], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xabf], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xabe], al
mov edx, 1
imul eax, edx, 0x12
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xabd], al
mov edx, 1
imul eax, edx, 0x13
movzx ecx, byte [eax + str.VClientEntityList003]
push ecx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xabc], al
xor edx, edx
mov byte [ebp - 0xabb], dl
mov byte [ebp - 0xaba], 0
movzx eax, byte [ebp - 0xaba]
test eax, eax
jne 0x10017a6d
mov dword [ebp - 0xca0], 0
jmp 0x100179e4
mov ecx, dword [ebp - 0xca0]
add ecx, 1
mov dword [ebp - 0xca0], ecx
cmp dword [ebp - 0xca0], 0x14
jae 0x10017a4a
lea edx, [ebp - 0xacf]
mov dword [ebp - 0x1750], edx
mov eax, dword [ebp - 0xca0]
push eax
mov ecx, dword [ebp - 0x1750]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xad0]
call fcn.100030a0
mov byte [ebp - 0xb56], al
lea eax, [ebp - 0xacf]
mov dword [ebp - 0x1754], eax
mov ecx, dword [ebp - 0xca0]
push ecx
mov ecx, dword [ebp - 0x1754]
call fcn.100030c0
mov dl, byte [ebp - 0xb56]
mov byte [eax], dl
jmp 0x100179d5
lea eax, [ebp - 0xacf]
mov dword [ebp - 0x1758], eax
push 0x14
mov ecx, dword [ebp - 0x1758]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xaba], 1
lea ecx, [ebp - 0xacf]
call fcn.100030b0
mov dword [ebp - 0xf80], eax
mov byte [ebp - 0x600], 0x60
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5ff], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5fe], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5fd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5fc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5fb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5fa], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5f9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5f8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5f7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0x5f6], al
xor eax, eax
mov byte [ebp - 0x5f5], al
mov byte [ebp - 0x5f4], 0
movzx ecx, byte [ebp - 0x5f4]
test ecx, ecx
jne 0x10017c90
mov dword [ebp - 0xca4], 0
jmp 0x10017c07
mov edx, dword [ebp - 0xca4]
add edx, 1
mov dword [ebp - 0xca4], edx
cmp dword [ebp - 0xca4], 0xa
jae 0x10017c6d
lea eax, [ebp - 0x5ff]
mov dword [ebp - 0x175c], eax
mov ecx, dword [ebp - 0xca4]
push ecx
mov ecx, dword [ebp - 0x175c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x600]
call fcn.100030a0
mov byte [ebp - 0xb57], al
lea ecx, [ebp - 0x5ff]
mov dword [ebp - 0x1760], ecx
mov edx, dword [ebp - 0xca4]
push edx
mov ecx, dword [ebp - 0x1760]
call fcn.100030c0
mov cl, byte [ebp - 0xb57]
mov byte [eax], cl
jmp 0x10017bf8
lea edx, [ebp - 0x5ff]
mov dword [ebp - 0x1764], edx
push 0xa
mov ecx, dword [ebp - 0x1764]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5f4], 1
lea ecx, [ebp - 0x5ff]
call fcn.100030b0
mov dword [ebp - 0xf7c], eax
xor eax, eax
je 0x10018766
mov ecx, dword [ebp - 0xf7c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1778], eax
mov byte [ebp - 0x7e8], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e7], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e6], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e5], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e4], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e3], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e2], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e1], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7e0], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7df], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7de], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7dd], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7dc], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7db], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7da], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0x7d9], al
xor ecx, ecx
mov byte [ebp - 0x7d8], cl
mov byte [ebp - 0x7d7], 0
movzx edx, byte [ebp - 0x7d7]
test edx, edx
jne 0x10017f73
mov dword [ebp - 0xca8], 0
jmp 0x10017eea
mov eax, dword [ebp - 0xca8]
add eax, 1
mov dword [ebp - 0xca8], eax
cmp dword [ebp - 0xca8], 0xf
jae 0x10017f50
lea ecx, [ebp - 0x7e7]
mov dword [ebp - 0x1768], ecx
mov edx, dword [ebp - 0xca8]
push edx
mov ecx, dword [ebp - 0x1768]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x7e8]
call fcn.100030a0
mov byte [ebp - 0xb58], al
lea edx, [ebp - 0x7e7]
mov dword [ebp - 0x176c], edx
mov eax, dword [ebp - 0xca8]
push eax
mov ecx, dword [ebp - 0x176c]
call fcn.100030c0
mov cl, byte [ebp - 0xb58]
mov byte [eax], cl
jmp 0x10017edb
lea edx, [ebp - 0x7e7]
mov dword [ebp - 0x1770], edx
push 0xf
mov ecx, dword [ebp - 0x1770]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x7d7], 1
lea ecx, [ebp - 0x7e7]
call fcn.100030b0
mov dword [ebp - 0x1774], eax
mov eax, dword [ebp - 0x1774]
push eax
mov ecx, dword [ebp - 0x1778]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xcac], eax
mov edx, dword [ebp - 0xcac]
add edx, 4
mov dword [ebp - 0xcac], edx
mov eax, dword [ebp - 0xcac]
mov dword [ebp - 0xbac], eax
mov ecx, dword [ebp - 0xbac]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x177c], edx
mov eax, dword [ebp - 0xbac]
add eax, 5
mov dword [ebp - 0xbac], eax
mov ecx, dword [ebp - 0xbac]
add ecx, dword [ebp - 0x177c]
mov dword [ebp - 0xbac], ecx
mov edx, dword [ebp - 0xbac]
mov dword [ebp - 0xcac], edx
mov dword [ebp - 0xe5c], 0
mov dword [ebp - 0xf74], 0xffffffff
mov eax, dword [ebp - 0xcac]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x6dc], edx
jmp 0x1001802b
mov eax, dword [ebp - 0x6dc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6dc], ecx
cmp dword [ebp - 0x6dc], 0
je 0x10018730
push 0x40
push 0
lea edx, [ebp - 0x250]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6d8], 0
mov dword [ebp - 0x6d8], 0
jmp 0x10018070
mov eax, dword [ebp - 0x6d8]
add eax, 1
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x6dc]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6d8]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x100180c9
mov edx, dword [ebp - 0x6dc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6d8]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x100180c9
mov eax, dword [ebp - 0x6dc]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6d8]
mov eax, dword [ebp - 0x6d8]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x250], cl
jmp 0x10018061
mov edx, dword [ebp - 0x6d8]
mov dword [ebp - 0xf60], edx
cmp dword [ebp - 0xf60], 0x40
jae 0x100180e0
jmp 0x100180e5
call fcn.100341c5
mov eax, dword [ebp - 0xf60]
mov byte [ebp + eax - 0x250], 0
mov ecx, dword [ebp - 0xf80]
mov dword [ebp - 0xd7c], ecx
lea edx, [ebp - 0x250]
mov dword [ebp - 0xe20], edx
mov eax, dword [ebp - 0xe20]
mov cl, byte [eax]
mov byte [ebp - 0xb59], cl
mov edx, dword [ebp - 0xd7c]
cmp cl, byte [edx]
jne 0x10018169
cmp byte [ebp - 0xb59], 0
je 0x1001815d
mov eax, dword [ebp - 0xe20]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb5a], cl
mov edx, dword [ebp - 0xd7c]
cmp cl, byte [edx + 1]
jne 0x10018169
add dword [ebp - 0xe20], 2
add dword [ebp - 0xd7c], 2
cmp byte [ebp - 0xb5a], 0
jne 0x1001810b
mov dword [ebp - 0xf64], 0
jmp 0x10018174
sbb eax, eax
or eax, 1
mov dword [ebp - 0xf64], eax
mov ecx, dword [ebp - 0xf64]
mov dword [ebp - 0x1780], ecx
cmp dword [ebp - 0x1780], 0
jne 0x1001872b
mov edx, dword [ebp - 0x6dc]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1a6c]
call fcn.10007f70
mov dword [ebp - 4], 1
mov byte [ebp - 0x5f0], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5ef], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5ee], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5ed], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5ec], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5eb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5ea], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5e9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5e8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5e7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0x5e6], al
xor eax, eax
mov byte [ebp - 0x5e5], al
mov byte [ebp - 0x5e4], 0
movzx ecx, byte [ebp - 0x5e4]
test ecx, ecx
jne 0x100183bb
mov dword [ebp - 0xcb0], 0
jmp 0x10018332
mov edx, dword [ebp - 0xcb0]
add edx, 1
mov dword [ebp - 0xcb0], edx
cmp dword [ebp - 0xcb0], 0xa
jae 0x10018398
lea eax, [ebp - 0x5ef]
mov dword [ebp - 0x1784], eax
mov ecx, dword [ebp - 0xcb0]
push ecx
mov ecx, dword [ebp - 0x1784]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x5f0]
call fcn.100030a0
mov byte [ebp - 0xb5b], al
lea ecx, [ebp - 0x5ef]
mov dword [ebp - 0x1788], ecx
mov edx, dword [ebp - 0xcb0]
push edx
mov ecx, dword [ebp - 0x1788]
call fcn.100030c0
mov cl, byte [ebp - 0xb5b]
mov byte [eax], cl
jmp 0x10018323
lea edx, [ebp - 0x5ef]
mov dword [ebp - 0x178c], edx
push 0xa
mov ecx, dword [ebp - 0x178c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5e4], 1
lea ecx, [ebp - 0x5ef]
call fcn.100030b0
mov dword [ebp - 0x1790], eax
push 0
mov eax, dword [ebp - 0x1790]
push eax
lea ecx, [ebp - 0x1a6c]
call fcn.1002b450
mov dword [ebp - 0xd78], eax
cmp dword [ebp - 0xd78], 0xffffffff
je 0x1001869b
mov byte [ebp - 0x5e0], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5df], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5de], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5dd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5dc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5db], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5da], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5d9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5d8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5d7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0x5d6], al
xor eax, eax
mov byte [ebp - 0x5d5], al
mov byte [ebp - 0x5d4], 0
movzx ecx, byte [ebp - 0x5d4]
test ecx, ecx
jne 0x10018605
mov dword [ebp - 0xcb4], 0
jmp 0x1001857c
mov edx, dword [ebp - 0xcb4]
add edx, 1
mov dword [ebp - 0xcb4], edx
cmp dword [ebp - 0xcb4], 0xa
jae 0x100185e2
lea eax, [ebp - 0x5df]
mov dword [ebp - 0x1794], eax
mov ecx, dword [ebp - 0xcb4]
push ecx
mov ecx, dword [ebp - 0x1794]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x5e0]
call fcn.100030a0
mov byte [ebp - 0xb5c], al
lea ecx, [ebp - 0x5df]
mov dword [ebp - 0x1798], ecx
mov edx, dword [ebp - 0xcb4]
push edx
mov ecx, dword [ebp - 0x1798]
call fcn.100030c0
mov cl, byte [ebp - 0xb5c]
mov byte [eax], cl
jmp 0x1001856d
lea edx, [ebp - 0x5df]
mov dword [ebp - 0x179c], edx
push 0xa
mov ecx, dword [ebp - 0x179c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5d4], 1
lea ecx, [ebp - 0x5df]
call fcn.100030b0
mov dword [ebp - 0x17a0], eax
mov eax, dword [ebp - 0xd78]
push eax
mov ecx, dword [ebp - 0x17a0]
push ecx
lea ecx, [ebp - 0x1a6c]
call fcn.1002b3f0
mov dword [ebp - 0xe58], eax
cmp dword [ebp - 0xe58], 0xffffffff
je 0x10018652
mov edx, dword [ebp - 0xe58]
sub edx, dword [ebp - 0xd78]
mov dword [ebp - 0xf68], edx
jmp 0x1001865e
mov eax, dword [ebp - 0xe58]
mov dword [ebp - 0xf68], eax
mov ecx, dword [ebp - 0xf68]
push ecx
mov edx, dword [ebp - 0xd78]
push edx
lea eax, [ebp - 0x1a54]
push eax
lea ecx, [ebp - 0x1a6c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 4
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1a54]
mov dword [ebp - 0xf6c], edx
jmp 0x100186c1
lea ecx, [ebp - 0x1a54]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 4
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1a54]
mov dword [ebp - 0xf6c], ecx
mov edx, dword [ebp - 0xf6c]
mov dword [ebp - 0x17a4], edx
mov ecx, dword [ebp - 0x17a4]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xf70], eax
lea ecx, [ebp - 0x1a54]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a6c]
call fcn.10007f20
mov eax, dword [ebp - 0xf70]
cmp eax, dword [ebp - 0xf74]
jle 0x1001872b
mov ecx, dword [ebp - 0xf70]
mov dword [ebp - 0xf74], ecx
mov edx, dword [ebp - 0x6dc]
mov dword [ebp - 0xe5c], edx
jmp 0x1001801c
cmp dword [ebp - 0xe5c], 0
jne 0x10018745
mov dword [ebp - 0xf78], 0
jmp 0x10018755
mov eax, dword [ebp - 0xe5c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xf78], eax
mov edx, dword [ebp - 0xf78]
mov dword [ebp - 0xf84], edx
jmp 0x10018a97
mov byte [ebp - 0x7fc], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7fb], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7fa], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f9], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f8], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f7], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f6], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f5], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f4], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f3], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f2], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f1], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7f0], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7ef], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7ee], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0x7ed], al
xor edx, edx
mov byte [ebp - 0x7ec], dl
mov byte [ebp - 0x7eb], 0
movzx eax, byte [ebp - 0x7eb]
test eax, eax
jne 0x10018a1d
mov dword [ebp - 0xcb8], 0
jmp 0x10018994
mov ecx, dword [ebp - 0xcb8]
add ecx, 1
mov dword [ebp - 0xcb8], ecx
cmp dword [ebp - 0xcb8], 0xf
jae 0x100189fa
lea edx, [ebp - 0x7fb]
mov dword [ebp - 0x17a8], edx
mov eax, dword [ebp - 0xcb8]
push eax
mov ecx, dword [ebp - 0x17a8]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x7fc]
call fcn.100030a0
mov byte [ebp - 0xb5d], al
lea eax, [ebp - 0x7fb]
mov dword [ebp - 0x17ac], eax
mov ecx, dword [ebp - 0xcb8]
push ecx
mov ecx, dword [ebp - 0x17ac]
call fcn.100030c0
mov dl, byte [ebp - 0xb5d]
mov byte [eax], dl
jmp 0x10018985
lea eax, [ebp - 0x7fb]
mov dword [ebp - 0x17b0], eax
push 0xf
mov ecx, dword [ebp - 0x17b0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x7eb], 1
lea ecx, [ebp - 0x7fb]
call fcn.100030b0
mov dword [ebp - 0x17b4], eax
mov ecx, dword [ebp - 0xf7c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17b8], eax
mov edx, dword [ebp - 0x17b4]
push edx
mov eax, dword [ebp - 0x17b8]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x17bc], eax
mov ecx, dword [ebp - 0x17bc]
mov dword [ebp - 0x17c0], ecx
mov edx, dword [ebp - 0x17c0]
mov dword [ebp - 0x17c4], edx
push 0
mov eax, dword [ebp - 0xf80]
push eax
call dword [ebp - 0x17c4]
add esp, 8
mov dword [ebp - 0x17c8], eax
mov ecx, dword [ebp - 0x17c8]
mov dword [ebp - 0xf84], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xf84]
mov dword [edx + 0x18], eax
mov byte [ebp - 0xae8], 0x48
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VClientPrediction001]
push eax
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae7], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae6], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae5], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae4], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VClientPrediction001]
push eax
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae3], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VClientPrediction001]
push eax
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae2], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VClientPrediction001]
push eax
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae1], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VClientPrediction001]
push eax
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xae0], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xadf], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xade], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xadd], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xadc], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xadb], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xada], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad9], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VClientPrediction001]
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad8], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad7], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad6], al
mov edx, 1
imul eax, edx, 0x12
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad5], al
mov edx, 1
imul eax, edx, 0x13
movzx ecx, byte [eax + str.VClientPrediction001]
push ecx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xad4], al
xor edx, edx
mov byte [ebp - 0xad3], dl
mov byte [ebp - 0xad2], 0
movzx eax, byte [ebp - 0xad2]
test eax, eax
jne 0x10018dff
mov dword [ebp - 0xcbc], 0
jmp 0x10018d76
mov ecx, dword [ebp - 0xcbc]
add ecx, 1
mov dword [ebp - 0xcbc], ecx
cmp dword [ebp - 0xcbc], 0x14
jae 0x10018ddc
lea edx, [ebp - 0xae7]
mov dword [ebp - 0x17cc], edx
mov eax, dword [ebp - 0xcbc]
push eax
mov ecx, dword [ebp - 0x17cc]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xae8]
call fcn.100030a0
mov byte [ebp - 0xb5e], al
lea eax, [ebp - 0xae7]
mov dword [ebp - 0x17d0], eax
mov ecx, dword [ebp - 0xcbc]
push ecx
mov ecx, dword [ebp - 0x17d0]
call fcn.100030c0
mov dl, byte [ebp - 0xb5e]
mov byte [eax], dl
jmp 0x10018d67
lea eax, [ebp - 0xae7]
mov dword [ebp - 0x17d4], eax
push 0x14
mov ecx, dword [ebp - 0x17d4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xad2], 1
lea ecx, [ebp - 0xae7]
call fcn.100030b0
mov dword [ebp - 0xfa8], eax
mov byte [ebp - 0x640], 0x55
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x63a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x639], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x638], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x637], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0x636], al
xor eax, eax
mov byte [ebp - 0x635], al
mov byte [ebp - 0x634], 0
movzx ecx, byte [ebp - 0x634]
test ecx, ecx
jne 0x10019022
mov dword [ebp - 0xcc0], 0
jmp 0x10018f99
mov edx, dword [ebp - 0xcc0]
add edx, 1
mov dword [ebp - 0xcc0], edx
cmp dword [ebp - 0xcc0], 0xa
jae 0x10018fff
lea eax, [ebp - 0x63f]
mov dword [ebp - 0x17d8], eax
mov ecx, dword [ebp - 0xcc0]
push ecx
mov ecx, dword [ebp - 0x17d8]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x640]
call fcn.100030a0
mov byte [ebp - 0xb5f], al
lea ecx, [ebp - 0x63f]
mov dword [ebp - 0x17dc], ecx
mov edx, dword [ebp - 0xcc0]
push edx
mov ecx, dword [ebp - 0x17dc]
call fcn.100030c0
mov cl, byte [ebp - 0xb5f]
mov byte [eax], cl
jmp 0x10018f8a
lea edx, [ebp - 0x63f]
mov dword [ebp - 0x17e0], edx
push 0xa
mov ecx, dword [ebp - 0x17e0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x634], 1
lea ecx, [ebp - 0x63f]
call fcn.100030b0
mov dword [ebp - 0xfa4], eax
xor eax, eax
je 0x10019af8
mov ecx, dword [ebp - 0xfa4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x17f4], eax
mov byte [ebp - 0x810], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x80a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x809], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x808], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x807], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x806], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x805], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x804], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x803], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x802], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0x801], al
xor ecx, ecx
mov byte [ebp - 0x800], cl
mov byte [ebp - 0x7ff], 0
movzx edx, byte [ebp - 0x7ff]
test edx, edx
jne 0x10019305
mov dword [ebp - 0xcc4], 0
jmp 0x1001927c
mov eax, dword [ebp - 0xcc4]
add eax, 1
mov dword [ebp - 0xcc4], eax
cmp dword [ebp - 0xcc4], 0xf
jae 0x100192e2
lea ecx, [ebp - 0x80f]
mov dword [ebp - 0x17e4], ecx
mov edx, dword [ebp - 0xcc4]
push edx
mov ecx, dword [ebp - 0x17e4]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x810]
call fcn.100030a0
mov byte [ebp - 0xb60], al
lea edx, [ebp - 0x80f]
mov dword [ebp - 0x17e8], edx
mov eax, dword [ebp - 0xcc4]
push eax
mov ecx, dword [ebp - 0x17e8]
call fcn.100030c0
mov cl, byte [ebp - 0xb60]
mov byte [eax], cl
jmp 0x1001926d
lea edx, [ebp - 0x80f]
mov dword [ebp - 0x17ec], edx
push 0xf
mov ecx, dword [ebp - 0x17ec]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x7ff], 1
lea ecx, [ebp - 0x80f]
call fcn.100030b0
mov dword [ebp - 0x17f0], eax
mov eax, dword [ebp - 0x17f0]
push eax
mov ecx, dword [ebp - 0x17f4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xccc], eax
mov edx, dword [ebp - 0xccc]
add edx, 4
mov dword [ebp - 0xccc], edx
mov eax, dword [ebp - 0xccc]
mov dword [ebp - 0xbb0], eax
mov ecx, dword [ebp - 0xbb0]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x17f8], edx
mov eax, dword [ebp - 0xbb0]
add eax, 5
mov dword [ebp - 0xbb0], eax
mov ecx, dword [ebp - 0xbb0]
add ecx, dword [ebp - 0x17f8]
mov dword [ebp - 0xbb0], ecx
mov edx, dword [ebp - 0xbb0]
mov dword [ebp - 0xccc], edx
mov dword [ebp - 0xe64], 0
mov dword [ebp - 0xf9c], 0xffffffff
mov eax, dword [ebp - 0xccc]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x6e4], edx
jmp 0x100193bd
mov eax, dword [ebp - 0x6e4]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6e4], ecx
cmp dword [ebp - 0x6e4], 0
je 0x10019ac2
push 0x40
push 0
lea edx, [ebp - 0x210]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6e0], 0
mov dword [ebp - 0x6e0], 0
jmp 0x10019402
mov eax, dword [ebp - 0x6e0]
add eax, 1
mov dword [ebp - 0x6e0], eax
mov ecx, dword [ebp - 0x6e4]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6e0]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x1001945b
mov edx, dword [ebp - 0x6e4]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6e0]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001945b
mov eax, dword [ebp - 0x6e4]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6e0]
mov eax, dword [ebp - 0x6e0]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x210], cl
jmp 0x100193f3
mov edx, dword [ebp - 0x6e0]
mov dword [ebp - 0xf88], edx
cmp dword [ebp - 0xf88], 0x40
jae 0x10019472
jmp 0x10019477
call fcn.100341c5
mov eax, dword [ebp - 0xf88]
mov byte [ebp + eax - 0x210], 0
mov ecx, dword [ebp - 0xfa8]
mov dword [ebp - 0xd70], ecx
lea edx, [ebp - 0x210]
mov dword [ebp - 0xd74], edx
mov eax, dword [ebp - 0xd74]
mov cl, byte [eax]
mov byte [ebp - 0xb61], cl
mov edx, dword [ebp - 0xd70]
cmp cl, byte [edx]
jne 0x100194fb
cmp byte [ebp - 0xb61], 0
je 0x100194ef
mov eax, dword [ebp - 0xd74]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb62], cl
mov edx, dword [ebp - 0xd70]
cmp cl, byte [edx + 1]
jne 0x100194fb
add dword [ebp - 0xd74], 2
add dword [ebp - 0xd70], 2
cmp byte [ebp - 0xb62], 0
jne 0x1001949d
mov dword [ebp - 0xf8c], 0
jmp 0x10019506
sbb eax, eax
or eax, 1
mov dword [ebp - 0xf8c], eax
mov ecx, dword [ebp - 0xf8c]
mov dword [ebp - 0x17fc], ecx
cmp dword [ebp - 0x17fc], 0
jne 0x10019abd
mov edx, dword [ebp - 0x6e4]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1a9c]
call fcn.10007f70
mov dword [ebp - 4], 2
mov byte [ebp - 0x5d0], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5cf], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5ce], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5cd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5cc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5cb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5ca], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5c9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5c8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5c7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0x5c6], al
xor eax, eax
mov byte [ebp - 0x5c5], al
mov byte [ebp - 0x5c4], 0
movzx ecx, byte [ebp - 0x5c4]
test ecx, ecx
jne 0x1001974d
mov dword [ebp - 0xcd0], 0
jmp 0x100196c4
mov edx, dword [ebp - 0xcd0]
add edx, 1
mov dword [ebp - 0xcd0], edx
cmp dword [ebp - 0xcd0], 0xa
jae 0x1001972a
lea eax, [ebp - 0x5cf]
mov dword [ebp - 0x1800], eax
mov ecx, dword [ebp - 0xcd0]
push ecx
mov ecx, dword [ebp - 0x1800]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x5d0]
call fcn.100030a0
mov byte [ebp - 0xb63], al
lea ecx, [ebp - 0x5cf]
mov dword [ebp - 0x1804], ecx
mov edx, dword [ebp - 0xcd0]
push edx
mov ecx, dword [ebp - 0x1804]
call fcn.100030c0
mov cl, byte [ebp - 0xb63]
mov byte [eax], cl
jmp 0x100196b5
lea edx, [ebp - 0x5cf]
mov dword [ebp - 0x1808], edx
push 0xa
mov ecx, dword [ebp - 0x1808]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5c4], 1
lea ecx, [ebp - 0x5cf]
call fcn.100030b0
mov dword [ebp - 0x180c], eax
push 0
mov eax, dword [ebp - 0x180c]
push eax
lea ecx, [ebp - 0x1a9c]
call fcn.1002b450
mov dword [ebp - 0xe1c], eax
cmp dword [ebp - 0xe1c], 0xffffffff
je 0x10019a2d
mov byte [ebp - 0x5c0], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5bf], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5be], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5bd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5bc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5bb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5ba], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5b9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5b8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5b7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0x5b6], al
xor eax, eax
mov byte [ebp - 0x5b5], al
mov byte [ebp - 0x5b4], 0
movzx ecx, byte [ebp - 0x5b4]
test ecx, ecx
jne 0x10019997
mov dword [ebp - 0xcd4], 0
jmp 0x1001990e
mov edx, dword [ebp - 0xcd4]
add edx, 1
mov dword [ebp - 0xcd4], edx
cmp dword [ebp - 0xcd4], 0xa
jae 0x10019974
lea eax, [ebp - 0x5bf]
mov dword [ebp - 0x1810], eax
mov ecx, dword [ebp - 0xcd4]
push ecx
mov ecx, dword [ebp - 0x1810]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x5c0]
call fcn.100030a0
mov byte [ebp - 0xb64], al
lea ecx, [ebp - 0x5bf]
mov dword [ebp - 0x1814], ecx
mov edx, dword [ebp - 0xcd4]
push edx
mov ecx, dword [ebp - 0x1814]
call fcn.100030c0
mov cl, byte [ebp - 0xb64]
mov byte [eax], cl
jmp 0x100198ff
lea edx, [ebp - 0x5bf]
mov dword [ebp - 0x1818], edx
push 0xa
mov ecx, dword [ebp - 0x1818]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5b4], 1
lea ecx, [ebp - 0x5bf]
call fcn.100030b0
mov dword [ebp - 0x181c], eax
mov eax, dword [ebp - 0xe1c]
push eax
mov ecx, dword [ebp - 0x181c]
push ecx
lea ecx, [ebp - 0x1a9c]
call fcn.1002b3f0
mov dword [ebp - 0xe60], eax
cmp dword [ebp - 0xe60], 0xffffffff
je 0x100199e4
mov edx, dword [ebp - 0xe60]
sub edx, dword [ebp - 0xe1c]
mov dword [ebp - 0xf90], edx
jmp 0x100199f0
mov eax, dword [ebp - 0xe60]
mov dword [ebp - 0xf90], eax
mov ecx, dword [ebp - 0xf90]
push ecx
mov edx, dword [ebp - 0xe1c]
push edx
lea eax, [ebp - 0x1a84]
push eax
lea ecx, [ebp - 0x1a9c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x10
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1a84]
mov dword [ebp - 0xf94], edx
jmp 0x10019a53
lea ecx, [ebp - 0x1a84]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x10
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1a84]
mov dword [ebp - 0xf94], ecx
mov edx, dword [ebp - 0xf94]
mov dword [ebp - 0x1820], edx
mov ecx, dword [ebp - 0x1820]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xf98], eax
lea ecx, [ebp - 0x1a84]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a9c]
call fcn.10007f20
mov eax, dword [ebp - 0xf98]
cmp eax, dword [ebp - 0xf9c]
jle 0x10019abd
mov ecx, dword [ebp - 0xf98]
mov dword [ebp - 0xf9c], ecx
mov edx, dword [ebp - 0x6e4]
mov dword [ebp - 0xe64], edx
jmp 0x100193ae
cmp dword [ebp - 0xe64], 0
jne 0x10019ad7
mov dword [ebp - 0xfa0], 0
jmp 0x10019ae7
mov eax, dword [ebp - 0xe64]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xfa0], eax
mov edx, dword [ebp - 0xfa0]
mov dword [ebp - 0xfac], edx
jmp 0x10019e29
mov byte [ebp - 0x7c0], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7bf], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7be], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7bd], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7bc], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7bb], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7ba], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b6], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b5], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b4], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b3], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b2], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0x7b1], al
xor edx, edx
mov byte [ebp - 0x7b0], dl
mov byte [ebp - 0x7af], 0
movzx eax, byte [ebp - 0x7af]
test eax, eax
jne 0x10019daf
mov dword [ebp - 0xcd8], 0
jmp 0x10019d26
mov ecx, dword [ebp - 0xcd8]
add ecx, 1
mov dword [ebp - 0xcd8], ecx
cmp dword [ebp - 0xcd8], 0xf
jae 0x10019d8c
lea edx, [ebp - 0x7bf]
mov dword [ebp - 0x1824], edx
mov eax, dword [ebp - 0xcd8]
push eax
mov ecx, dword [ebp - 0x1824]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x7c0]
call fcn.100030a0
mov byte [ebp - 0xb65], al
lea eax, [ebp - 0x7bf]
mov dword [ebp - 0x1828], eax
mov ecx, dword [ebp - 0xcd8]
push ecx
mov ecx, dword [ebp - 0x1828]
call fcn.100030c0
mov dl, byte [ebp - 0xb65]
mov byte [eax], dl
jmp 0x10019d17
lea eax, [ebp - 0x7bf]
mov dword [ebp - 0x182c], eax
push 0xf
mov ecx, dword [ebp - 0x182c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x7af], 1
lea ecx, [ebp - 0x7bf]
call fcn.100030b0
mov dword [ebp - 0x1830], eax
mov ecx, dword [ebp - 0xfa4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1834], eax
mov edx, dword [ebp - 0x1830]
push edx
mov eax, dword [ebp - 0x1834]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1838], eax
mov ecx, dword [ebp - 0x1838]
mov dword [ebp - 0x183c], ecx
mov edx, dword [ebp - 0x183c]
mov dword [ebp - 0x1840], edx
push 0
mov eax, dword [ebp - 0xfa8]
push eax
call dword [ebp - 0x1840]
add esp, 8
mov dword [ebp - 0x1844], eax
mov ecx, dword [ebp - 0x1844]
mov dword [ebp - 0xfac], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xfac]
mov dword [edx + 0x38], eax
mov byte [ebp - 0x838], 8
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.GameMovement001]
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x837], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x836], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.GameMovement001]
push ecx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x835], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.GameMovement001]
push ecx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x834], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.GameMovement001]
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x833], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.GameMovement001]
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x832], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.GameMovement001]
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x831], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.GameMovement001]
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x830], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82f], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82e], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82d], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82c], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82b], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x82a], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.GameMovement001]
push edx
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0x829], al
xor eax, eax
mov byte [ebp - 0x828], al
mov byte [ebp - 0x827], 0
movzx ecx, byte [ebp - 0x827]
test ecx, ecx
jne 0x1001a0ec
mov dword [ebp - 0xcdc], 0
jmp 0x1001a063
mov edx, dword [ebp - 0xcdc]
add edx, 1
mov dword [ebp - 0xcdc], edx
cmp dword [ebp - 0xcdc], 0xf
jae 0x1001a0c9
lea eax, [ebp - 0x837]
mov dword [ebp - 0x1848], eax
mov ecx, dword [ebp - 0xcdc]
push ecx
mov ecx, dword [ebp - 0x1848]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x838]
call fcn.100030a0
mov byte [ebp - 0xb2f], al
lea ecx, [ebp - 0x837]
mov dword [ebp - 0x184c], ecx
mov edx, dword [ebp - 0xcdc]
push edx
mov ecx, dword [ebp - 0x184c]
call fcn.100030c0
mov cl, byte [ebp - 0xb2f]
mov byte [eax], cl
jmp 0x1001a054
lea edx, [ebp - 0x837]
mov dword [ebp - 0x1850], edx
push 0xf
mov ecx, dword [ebp - 0x1850]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x827], 1
lea ecx, [ebp - 0x837]
call fcn.100030b0
mov dword [ebp - 0xfd0], eax
mov byte [ebp - 0x5b0], 0x5d
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5af], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5ae], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5ad], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5ac], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5ab], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5aa], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5a9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5a8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5a7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0x5a6], al
xor edx, edx
mov byte [ebp - 0x5a5], dl
mov byte [ebp - 0x5a4], 0
movzx eax, byte [ebp - 0x5a4]
test eax, eax
jne 0x1001a30f
mov dword [ebp - 0xce0], 0
jmp 0x1001a286
mov ecx, dword [ebp - 0xce0]
add ecx, 1
mov dword [ebp - 0xce0], ecx
cmp dword [ebp - 0xce0], 0xa
jae 0x1001a2ec
lea edx, [ebp - 0x5af]
mov dword [ebp - 0x1854], edx
mov eax, dword [ebp - 0xce0]
push eax
mov ecx, dword [ebp - 0x1854]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x5b0]
call fcn.100030a0
mov byte [ebp - 0xb67], al
lea eax, [ebp - 0x5af]
mov dword [ebp - 0x1858], eax
mov ecx, dword [ebp - 0xce0]
push ecx
mov ecx, dword [ebp - 0x1858]
call fcn.100030c0
mov dl, byte [ebp - 0xb67]
mov byte [eax], dl
jmp 0x1001a277
lea eax, [ebp - 0x5af]
mov dword [ebp - 0x185c], eax
push 0xa
mov ecx, dword [ebp - 0x185c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x5a4], 1
lea ecx, [ebp - 0x5af]
call fcn.100030b0
mov dword [ebp - 0xfcc], eax
xor ecx, ecx
je 0x1001ade5
mov edx, dword [ebp - 0xfcc]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1870], eax
mov byte [ebp - 0x84c], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x84b], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x84a], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x849], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x848], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x847], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x846], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x845], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x844], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x843], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x842], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x841], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x840], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x83f], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x83e], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0x83d], al
xor edx, edx
mov byte [ebp - 0x83c], dl
mov byte [ebp - 0x83b], 0
movzx eax, byte [ebp - 0x83b]
test eax, eax
jne 0x1001a5f2
mov dword [ebp - 0xce4], 0
jmp 0x1001a569
mov ecx, dword [ebp - 0xce4]
add ecx, 1
mov dword [ebp - 0xce4], ecx
cmp dword [ebp - 0xce4], 0xf
jae 0x1001a5cf
lea edx, [ebp - 0x84b]
mov dword [ebp - 0x1860], edx
mov eax, dword [ebp - 0xce4]
push eax
mov ecx, dword [ebp - 0x1860]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x84c]
call fcn.100030a0
mov byte [ebp - 0xb68], al
lea eax, [ebp - 0x84b]
mov dword [ebp - 0x1864], eax
mov ecx, dword [ebp - 0xce4]
push ecx
mov ecx, dword [ebp - 0x1864]
call fcn.100030c0
mov dl, byte [ebp - 0xb68]
mov byte [eax], dl
jmp 0x1001a55a
lea eax, [ebp - 0x84b]
mov dword [ebp - 0x1868], eax
push 0xf
mov ecx, dword [ebp - 0x1868]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x83b], 1
lea ecx, [ebp - 0x84b]
call fcn.100030b0
mov dword [ebp - 0x186c], eax
mov ecx, dword [ebp - 0x186c]
push ecx
mov edx, dword [ebp - 0x1870]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xce8], eax
mov eax, dword [ebp - 0xce8]
add eax, 4
mov dword [ebp - 0xce8], eax
mov ecx, dword [ebp - 0xce8]
mov dword [ebp - 0xbb4], ecx
mov edx, dword [ebp - 0xbb4]
mov eax, dword [edx + 1]
mov dword [ebp - 0x1874], eax
mov ecx, dword [ebp - 0xbb4]
add ecx, 5
mov dword [ebp - 0xbb4], ecx
mov edx, dword [ebp - 0xbb4]
add edx, dword [ebp - 0x1874]
mov dword [ebp - 0xbb4], edx
mov eax, dword [ebp - 0xbb4]
mov dword [ebp - 0xce8], eax
mov dword [ebp - 0xe6c], 0
mov dword [ebp - 0xfc4], 0xffffffff
mov ecx, dword [ebp - 0xce8]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x6ec], eax
jmp 0x1001a6aa
mov ecx, dword [ebp - 0x6ec]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x6ec], edx
cmp dword [ebp - 0x6ec], 0
je 0x1001adaf
push 0x40
push 0
lea eax, [ebp - 0x1d0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6e8], 0
mov dword [ebp - 0x6e8], 0
jmp 0x1001a6ef
mov ecx, dword [ebp - 0x6e8]
add ecx, 1
mov dword [ebp - 0x6e8], ecx
mov edx, dword [ebp - 0x6ec]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6e8]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x1001a748
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6e8]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001a748
mov ecx, dword [ebp - 0x6ec]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6e8]
mov ecx, dword [ebp - 0x6e8]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x1d0], dl
jmp 0x1001a6e0
mov eax, dword [ebp - 0x6e8]
mov dword [ebp - 0xfb0], eax
cmp dword [ebp - 0xfb0], 0x40
jae 0x1001a75f
jmp 0x1001a764
call fcn.100341c5
mov ecx, dword [ebp - 0xfb0]
mov byte [ebp + ecx - 0x1d0], 0
mov edx, dword [ebp - 0xfd0]
mov dword [ebp - 0xe14], edx
lea eax, [ebp - 0x1d0]
mov dword [ebp - 0xe18], eax
mov ecx, dword [ebp - 0xe18]
mov dl, byte [ecx]
mov byte [ebp - 0xb69], dl
mov eax, dword [ebp - 0xe14]
cmp dl, byte [eax]
jne 0x1001a7e8
cmp byte [ebp - 0xb69], 0
je 0x1001a7dc
mov ecx, dword [ebp - 0xe18]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb6a], dl
mov eax, dword [ebp - 0xe14]
cmp dl, byte [eax + 1]
jne 0x1001a7e8
add dword [ebp - 0xe18], 2
add dword [ebp - 0xe14], 2
cmp byte [ebp - 0xb6a], 0
jne 0x1001a78a
mov dword [ebp - 0xfb4], 0
jmp 0x1001a7f3
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0xfb4], ecx
mov edx, dword [ebp - 0xfb4]
mov dword [ebp - 0x1878], edx
cmp dword [ebp - 0x1878], 0
jne 0x1001adaa
mov eax, dword [ebp - 0x6ec]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x1acc]
call fcn.10007f70
mov dword [ebp - 4], 3
mov byte [ebp - 0x5a0], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x59a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x599], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x598], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x597], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0x596], al
xor ecx, ecx
mov byte [ebp - 0x595], cl
mov byte [ebp - 0x594], 0
movzx edx, byte [ebp - 0x594]
test edx, edx
jne 0x1001aa3a
mov dword [ebp - 0xcec], 0
jmp 0x1001a9b1
mov eax, dword [ebp - 0xcec]
add eax, 1
mov dword [ebp - 0xcec], eax
cmp dword [ebp - 0xcec], 0xa
jae 0x1001aa17
lea ecx, [ebp - 0x59f]
mov dword [ebp - 0x187c], ecx
mov edx, dword [ebp - 0xcec]
push edx
mov ecx, dword [ebp - 0x187c]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x5a0]
call fcn.100030a0
mov byte [ebp - 0xb6b], al
lea edx, [ebp - 0x59f]
mov dword [ebp - 0x1880], edx
mov eax, dword [ebp - 0xcec]
push eax
mov ecx, dword [ebp - 0x1880]
call fcn.100030c0
mov cl, byte [ebp - 0xb6b]
mov byte [eax], cl
jmp 0x1001a9a2
lea edx, [ebp - 0x59f]
mov dword [ebp - 0x1884], edx
push 0xa
mov ecx, dword [ebp - 0x1884]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x594], 1
lea ecx, [ebp - 0x59f]
call fcn.100030b0
mov dword [ebp - 0x10f4], eax
push 0
mov eax, dword [ebp - 0x10f4]
push eax
lea ecx, [ebp - 0x1acc]
call fcn.1002b450
mov dword [ebp - 0xe10], eax
cmp dword [ebp - 0xe10], 0xffffffff
je 0x1001ad1a
mov byte [ebp - 0x590], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x58a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x589], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x588], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x587], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0x586], al
xor eax, eax
mov byte [ebp - 0x585], al
mov byte [ebp - 0x584], 0
movzx ecx, byte [ebp - 0x584]
test ecx, ecx
jne 0x1001ac84
mov dword [ebp - 0xcf0], 0
jmp 0x1001abfb
mov edx, dword [ebp - 0xcf0]
add edx, 1
mov dword [ebp - 0xcf0], edx
cmp dword [ebp - 0xcf0], 0xa
jae 0x1001ac61
lea eax, [ebp - 0x58f]
mov dword [ebp - 0x10f8], eax
mov ecx, dword [ebp - 0xcf0]
push ecx
mov ecx, dword [ebp - 0x10f8]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x590]
call fcn.100030a0
mov byte [ebp - 0xb6c], al
lea ecx, [ebp - 0x58f]
mov dword [ebp - 0x10fc], ecx
mov edx, dword [ebp - 0xcf0]
push edx
mov ecx, dword [ebp - 0x10fc]
call fcn.100030c0
mov cl, byte [ebp - 0xb6c]
mov byte [eax], cl
jmp 0x1001abec
lea edx, [ebp - 0x58f]
mov dword [ebp - 0x1100], edx
push 0xa
mov ecx, dword [ebp - 0x1100]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x584], 1
lea ecx, [ebp - 0x58f]
call fcn.100030b0
mov dword [ebp - 0x1104], eax
mov eax, dword [ebp - 0xe10]
push eax
mov ecx, dword [ebp - 0x1104]
push ecx
lea ecx, [ebp - 0x1acc]
call fcn.1002b3f0
mov dword [ebp - 0xe68], eax
cmp dword [ebp - 0xe68], 0xffffffff
je 0x1001acd1
mov edx, dword [ebp - 0xe68]
sub edx, dword [ebp - 0xe10]
mov dword [ebp - 0xfb8], edx
jmp 0x1001acdd
mov eax, dword [ebp - 0xe68]
mov dword [ebp - 0xfb8], eax
mov ecx, dword [ebp - 0xfb8]
push ecx
mov edx, dword [ebp - 0xe10]
push edx
lea eax, [ebp - 0x1ab4]
push eax
lea ecx, [ebp - 0x1acc]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x40
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1ab4]
mov dword [ebp - 0xfbc], edx
jmp 0x1001ad40
lea ecx, [ebp - 0x1ab4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x40
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1ab4]
mov dword [ebp - 0xfbc], ecx
mov edx, dword [ebp - 0xfbc]
mov dword [ebp - 0x1108], edx
mov ecx, dword [ebp - 0x1108]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xfc0], eax
lea ecx, [ebp - 0x1ab4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1acc]
call fcn.10007f20
mov eax, dword [ebp - 0xfc0]
cmp eax, dword [ebp - 0xfc4]
jle 0x1001adaa
mov ecx, dword [ebp - 0xfc0]
mov dword [ebp - 0xfc4], ecx
mov edx, dword [ebp - 0x6ec]
mov dword [ebp - 0xe6c], edx
jmp 0x1001a69b
cmp dword [ebp - 0xe6c], 0
jne 0x1001adc4
mov dword [ebp - 0xfc8], 0
jmp 0x1001add4
mov eax, dword [ebp - 0xe6c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xfc8], eax
mov edx, dword [ebp - 0xfc8]
mov dword [ebp - 0xfd4], edx
jmp 0x1001b116
mov byte [ebp - 0x860], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85f], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85e], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85d], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85c], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85b], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x85a], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x859], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x858], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x857], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x856], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x855], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x854], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x853], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x852], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0x851], al
xor edx, edx
mov byte [ebp - 0x850], dl
mov byte [ebp - 0x84f], 0
movzx eax, byte [ebp - 0x84f]
test eax, eax
jne 0x1001b09c
mov dword [ebp - 0xcf4], 0
jmp 0x1001b013
mov ecx, dword [ebp - 0xcf4]
add ecx, 1
mov dword [ebp - 0xcf4], ecx
cmp dword [ebp - 0xcf4], 0xf
jae 0x1001b079
lea edx, [ebp - 0x85f]
mov dword [ebp - 0x110c], edx
mov eax, dword [ebp - 0xcf4]
push eax
mov ecx, dword [ebp - 0x110c]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x860]
call fcn.100030a0
mov byte [ebp - 0xb6d], al
lea eax, [ebp - 0x85f]
mov dword [ebp - 0x1110], eax
mov ecx, dword [ebp - 0xcf4]
push ecx
mov ecx, dword [ebp - 0x1110]
call fcn.100030c0
mov dl, byte [ebp - 0xb6d]
mov byte [eax], dl
jmp 0x1001b004
lea eax, [ebp - 0x85f]
mov dword [ebp - 0x1114], eax
push 0xf
mov ecx, dword [ebp - 0x1114]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x84f], 1
lea ecx, [ebp - 0x85f]
call fcn.100030b0
mov dword [ebp - 0x1118], eax
mov ecx, dword [ebp - 0xfcc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x111c], eax
mov edx, dword [ebp - 0x1118]
push edx
mov eax, dword [ebp - 0x111c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1120], eax
mov ecx, dword [ebp - 0x1120]
mov dword [ebp - 0x1124], ecx
mov edx, dword [ebp - 0x1124]
mov dword [ebp - 0x1128], edx
push 0
mov eax, dword [ebp - 0xfd0]
push eax
call dword [ebp - 0x1128]
add esp, 8
mov dword [ebp - 0x112c], eax
mov ecx, dword [ebp - 0x112c]
mov dword [ebp - 0xfd4], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xfd4]
mov dword [edx + 0x3c], eax
mov byte [ebp - 0xa18], 0xb
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineClient013]
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa17], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa16], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineClient013]
push ecx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa15], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineClient013]
push ecx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa14], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineClient013]
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa13], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineClient013]
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa12], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineClient013]
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa11], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineClient013]
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa10], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0f], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0e], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0d], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0c], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0b], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa0a], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa09], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VEngineClient013]
push edx
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xa08], al
xor eax, eax
mov byte [ebp - 0xa07], al
mov byte [ebp - 0xa06], 0
movzx ecx, byte [ebp - 0xa06]
test ecx, ecx
jne 0x1001b3fa
mov dword [ebp - 0xcf8], 0
jmp 0x1001b371
mov edx, dword [ebp - 0xcf8]
add edx, 1
mov dword [ebp - 0xcf8], edx
cmp dword [ebp - 0xcf8], 0x10
jae 0x1001b3d7
lea eax, [ebp - 0xa17]
mov dword [ebp - 0x1130], eax
mov ecx, dword [ebp - 0xcf8]
push ecx
mov ecx, dword [ebp - 0x1130]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa18]
call fcn.100030a0
mov byte [ebp - 0xb6e], al
lea ecx, [ebp - 0xa17]
mov dword [ebp - 0x1134], ecx
mov edx, dword [ebp - 0xcf8]
push edx
mov ecx, dword [ebp - 0x1134]
call fcn.100030c0
mov cl, byte [ebp - 0xb6e]
mov byte [eax], cl
jmp 0x1001b362
lea edx, [ebp - 0xa17]
mov dword [ebp - 0x1138], edx
push 0x10
mov ecx, dword [ebp - 0x1138]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa06], 1
lea ecx, [ebp - 0xa17]
call fcn.100030b0
mov dword [ebp - 0xffc], eax
mov byte [ebp - 0x580], 0x27
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57f], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57e], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57d], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57c], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57b], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x57a], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x579], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x578], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x577], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0x576], al
xor edx, edx
mov byte [ebp - 0x575], dl
mov byte [ebp - 0x574], 0
movzx eax, byte [ebp - 0x574]
test eax, eax
jne 0x1001b61d
mov dword [ebp - 0xcfc], 0
jmp 0x1001b594
mov ecx, dword [ebp - 0xcfc]
add ecx, 1
mov dword [ebp - 0xcfc], ecx
cmp dword [ebp - 0xcfc], 0xa
jae 0x1001b5fa
lea edx, [ebp - 0x57f]
mov dword [ebp - 0x113c], edx
mov eax, dword [ebp - 0xcfc]
push eax
mov ecx, dword [ebp - 0x113c]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x580]
call fcn.100030a0
mov byte [ebp - 0xb6f], al
lea eax, [ebp - 0x57f]
mov dword [ebp - 0x1140], eax
mov ecx, dword [ebp - 0xcfc]
push ecx
mov ecx, dword [ebp - 0x1140]
call fcn.100030c0
mov dl, byte [ebp - 0xb6f]
mov byte [eax], dl
jmp 0x1001b585
lea eax, [ebp - 0x57f]
mov dword [ebp - 0x1144], eax
push 0xa
mov ecx, dword [ebp - 0x1144]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x574], 1
lea ecx, [ebp - 0x57f]
call fcn.100030b0
mov dword [ebp - 0xff8], eax
xor ecx, ecx
je 0x1001c0f8
mov edx, dword [ebp - 0xff8]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1158], eax
mov byte [ebp - 0x874], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x873], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x872], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x871], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x870], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86f], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86e], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86d], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86c], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86b], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x86a], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x869], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x868], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x867], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x866], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0x865], al
xor edx, edx
mov byte [ebp - 0x864], dl
mov byte [ebp - 0x863], 0
movzx eax, byte [ebp - 0x863]
test eax, eax
jne 0x1001b900
mov dword [ebp - 0xd00], 0
jmp 0x1001b877
mov ecx, dword [ebp - 0xd00]
add ecx, 1
mov dword [ebp - 0xd00], ecx
cmp dword [ebp - 0xd00], 0xf
jae 0x1001b8dd
lea edx, [ebp - 0x873]
mov dword [ebp - 0x1148], edx
mov eax, dword [ebp - 0xd00]
push eax
mov ecx, dword [ebp - 0x1148]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x874]
call fcn.100030a0
mov byte [ebp - 0xb70], al
lea eax, [ebp - 0x873]
mov dword [ebp - 0x114c], eax
mov ecx, dword [ebp - 0xd00]
push ecx
mov ecx, dword [ebp - 0x114c]
call fcn.100030c0
mov dl, byte [ebp - 0xb70]
mov byte [eax], dl
jmp 0x1001b868
lea eax, [ebp - 0x873]
mov dword [ebp - 0x1150], eax
push 0xf
mov ecx, dword [ebp - 0x1150]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x863], 1
lea ecx, [ebp - 0x873]
call fcn.100030b0
mov dword [ebp - 0x1154], eax
mov ecx, dword [ebp - 0x1154]
push ecx
mov edx, dword [ebp - 0x1158]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xd04]
add eax, 4
mov dword [ebp - 0xd04], eax
mov ecx, dword [ebp - 0xd04]
mov dword [ebp - 0xb80], ecx
mov edx, dword [ebp - 0xb80]
mov eax, dword [edx + 1]
mov dword [ebp - 0x115c], eax
mov ecx, dword [ebp - 0xb80]
add ecx, 5
mov dword [ebp - 0xb80], ecx
mov edx, dword [ebp - 0xb80]
add edx, dword [ebp - 0x115c]
mov dword [ebp - 0xb80], edx
mov eax, dword [ebp - 0xb80]
mov dword [ebp - 0xd04], eax
mov dword [ebp - 0xe74], 0
mov dword [ebp - 0xfec], 0xffffffff
mov ecx, dword [ebp - 0xd04]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x6f4], eax
jmp 0x1001b9b8
mov ecx, dword [ebp - 0x6f4]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x6f4], edx
cmp dword [ebp - 0x6f4], 0
je 0x1001c0c2
push 0x40
push 0
lea eax, [ebp - 0x190]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6f0], 0
mov dword [ebp - 0x6f0], 0
jmp 0x1001b9fd
mov ecx, dword [ebp - 0x6f0]
add ecx, 1
mov dword [ebp - 0x6f0], ecx
mov edx, dword [ebp - 0x6f4]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6f0]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x1001ba56
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6f0]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001ba56
mov ecx, dword [ebp - 0x6f4]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6f0]
mov ecx, dword [ebp - 0x6f0]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x190], dl
jmp 0x1001b9ee
mov eax, dword [ebp - 0x6f0]
mov dword [ebp - 0xfd8], eax
cmp dword [ebp - 0xfd8], 0x40
jae 0x1001ba6d
jmp 0x1001ba72
call fcn.100341c5
mov ecx, dword [ebp - 0xfd8]
mov byte [ebp + ecx - 0x190], 0
mov edx, dword [ebp - 0xffc]
mov dword [ebp - 0xe08], edx
lea eax, [ebp - 0x190]
mov dword [ebp - 0xe0c], eax
mov ecx, dword [ebp - 0xe0c]
mov dl, byte [ecx]
mov byte [ebp - 0xb71], dl
mov eax, dword [ebp - 0xe08]
cmp dl, byte [eax]
jne 0x1001baf6
cmp byte [ebp - 0xb71], 0
je 0x1001baea
mov ecx, dword [ebp - 0xe0c]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb72], dl
mov eax, dword [ebp - 0xe08]
cmp dl, byte [eax + 1]
jne 0x1001baf6
add dword [ebp - 0xe0c], 2
add dword [ebp - 0xe08], 2
cmp byte [ebp - 0xb72], 0
jne 0x1001ba98
mov dword [ebp - 0xfdc], 0
jmp 0x1001bb01
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0xfdc], ecx
mov edx, dword [ebp - 0xfdc]
mov dword [ebp - 0x1160], edx
cmp dword [ebp - 0x1160], 0
jne 0x1001c0bd
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x1afc]
call fcn.10007f70
mov dword [ebp - 4], 4
mov byte [ebp - 0x570], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x56a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x569], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x568], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x567], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0x566], al
xor ecx, ecx
mov byte [ebp - 0x565], cl
mov byte [ebp - 0x564], 0
movzx edx, byte [ebp - 0x564]
test edx, edx
jne 0x1001bd48
mov dword [ebp - 0xd08], 0
jmp 0x1001bcbf
mov eax, dword [ebp - 0xd08]
add eax, 1
mov dword [ebp - 0xd08], eax
cmp dword [ebp - 0xd08], 0xa
jae 0x1001bd25
lea ecx, [ebp - 0x56f]
mov dword [ebp - 0x1164], ecx
mov edx, dword [ebp - 0xd08]
push edx
mov ecx, dword [ebp - 0x1164]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x570]
call fcn.100030a0
mov byte [ebp - 0xb73], al
lea edx, [ebp - 0x56f]
mov dword [ebp - 0x1168], edx
mov eax, dword [ebp - 0xd08]
push eax
mov ecx, dword [ebp - 0x1168]
call fcn.100030c0
mov cl, byte [ebp - 0xb73]
mov byte [eax], cl
jmp 0x1001bcb0
lea edx, [ebp - 0x56f]
mov dword [ebp - 0x116c], edx
push 0xa
mov ecx, dword [ebp - 0x116c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x564], 1
lea ecx, [ebp - 0x56f]
call fcn.100030b0
mov dword [ebp - 0x1170], eax
push 0
mov eax, dword [ebp - 0x1170]
push eax
lea ecx, [ebp - 0x1afc]
call fcn.1002b450
mov dword [ebp - 0xe04], eax
cmp dword [ebp - 0xe04], 0xffffffff
je 0x1001c02b
mov byte [ebp - 0x560], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x55a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x559], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x558], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x557], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0x556], al
xor eax, eax
mov byte [ebp - 0x555], al
mov byte [ebp - 0x554], 0
movzx ecx, byte [ebp - 0x554]
test ecx, ecx
jne 0x1001bf92
mov dword [ebp - 0xd0c], 0
jmp 0x1001bf09
mov edx, dword [ebp - 0xd0c]
add edx, 1
mov dword [ebp - 0xd0c], edx
cmp dword [ebp - 0xd0c], 0xa
jae 0x1001bf6f
lea eax, [ebp - 0x55f]
mov dword [ebp - 0x1174], eax
mov ecx, dword [ebp - 0xd0c]
push ecx
mov ecx, dword [ebp - 0x1174]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x560]
call fcn.100030a0
mov byte [ebp - 0xb74], al
lea ecx, [ebp - 0x55f]
mov dword [ebp - 0x1178], ecx
mov edx, dword [ebp - 0xd0c]
push edx
mov ecx, dword [ebp - 0x1178]
call fcn.100030c0
mov cl, byte [ebp - 0xb74]
mov byte [eax], cl
jmp 0x1001befa
lea edx, [ebp - 0x55f]
mov dword [ebp - 0x117c], edx
push 0xa
mov ecx, dword [ebp - 0x117c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x554], 1
lea ecx, [ebp - 0x55f]
call fcn.100030b0
mov dword [ebp - 0x1180], eax
mov eax, dword [ebp - 0xe04]
push eax
mov ecx, dword [ebp - 0x1180]
push ecx
lea ecx, [ebp - 0x1afc]
call fcn.1002b3f0
mov dword [ebp - 0xe70], eax
cmp dword [ebp - 0xe70], 0xffffffff
je 0x1001bfdf
mov edx, dword [ebp - 0xe70]
sub edx, dword [ebp - 0xe04]
mov dword [ebp - 0xfe0], edx
jmp 0x1001bfeb
mov eax, dword [ebp - 0xe70]
mov dword [ebp - 0xfe0], eax
mov ecx, dword [ebp - 0xfe0]
push ecx
mov edx, dword [ebp - 0xe04]
push edx
lea eax, [ebp - 0x1ae4]
push eax
lea ecx, [ebp - 0x1afc]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x100
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1ae4]
mov dword [ebp - 0xfe4], edx
jmp 0x1001c053
lea ecx, [ebp - 0x1ae4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x100
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1ae4]
mov dword [ebp - 0xfe4], ecx
mov edx, dword [ebp - 0xfe4]
mov dword [ebp - 0x1184], edx
mov ecx, dword [ebp - 0x1184]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xfe8], eax
lea ecx, [ebp - 0x1ae4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1afc]
call fcn.10007f20
mov eax, dword [ebp - 0xfe8]
cmp eax, dword [ebp - 0xfec]
jle 0x1001c0bd
mov ecx, dword [ebp - 0xfe8]
mov dword [ebp - 0xfec], ecx
mov edx, dword [ebp - 0x6f4]
mov dword [ebp - 0xe74], edx
jmp 0x1001b9a9
cmp dword [ebp - 0xe74], 0
jne 0x1001c0d7
mov dword [ebp - 0xff4], 0
jmp 0x1001c0e7
mov eax, dword [ebp - 0xe74]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xff4], eax
mov edx, dword [ebp - 0xff4]
mov dword [ebp - 0x1000], edx
jmp 0x1001c429
mov byte [ebp - 0x888], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x887], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x886], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x885], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x884], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x883], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x882], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x881], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x880], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87f], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87e], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87d], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87c], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87b], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x87a], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0x879], al
xor edx, edx
mov byte [ebp - 0x878], dl
mov byte [ebp - 0x877], 0
movzx eax, byte [ebp - 0x877]
test eax, eax
jne 0x1001c3af
mov dword [ebp - 0xd10], 0
jmp 0x1001c326
mov ecx, dword [ebp - 0xd10]
add ecx, 1
mov dword [ebp - 0xd10], ecx
cmp dword [ebp - 0xd10], 0xf
jae 0x1001c38c
lea edx, [ebp - 0x887]
mov dword [ebp - 0x1188], edx
mov eax, dword [ebp - 0xd10]
push eax
mov ecx, dword [ebp - 0x1188]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x888]
call fcn.100030a0
mov byte [ebp - 0xb75], al
lea eax, [ebp - 0x887]
mov dword [ebp - 0x118c], eax
mov ecx, dword [ebp - 0xd10]
push ecx
mov ecx, dword [ebp - 0x118c]
call fcn.100030c0
mov dl, byte [ebp - 0xb75]
mov byte [eax], dl
jmp 0x1001c317
lea eax, [ebp - 0x887]
mov dword [ebp - 0x1190], eax
push 0xf
mov ecx, dword [ebp - 0x1190]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x877], 1
lea ecx, [ebp - 0x887]
call fcn.100030b0
mov dword [ebp - 0x1194], eax
mov ecx, dword [ebp - 0xff8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1198], eax
mov edx, dword [ebp - 0x1194]
push edx
mov eax, dword [ebp - 0x1198]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x119c], eax
mov ecx, dword [ebp - 0x119c]
mov dword [ebp - 0x11a0], ecx
mov edx, dword [ebp - 0x11a0]
mov dword [ebp - 0x11a4], edx
push 0
mov eax, dword [ebp - 0xffc]
push eax
call dword [ebp - 0x11a4]
add esp, 8
mov dword [ebp - 0x11a8], eax
mov ecx, dword [ebp - 0x11a8]
mov dword [ebp - 0x1000], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1000]
mov dword [edx + 0x14], eax
mov byte [ebp - 0xb00], 0x6e
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.EngineTraceClient003]
push eax
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaff], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xafe], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xafd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xafc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.EngineTraceClient003]
push eax
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xafb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.EngineTraceClient003]
push eax
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xafa], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.EngineTraceClient003]
push eax
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.EngineTraceClient003]
push eax
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf6], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf5], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf4], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf3], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf2], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf1], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.EngineTraceClient003]
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaf0], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaef], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaee], al
mov edx, 1
imul eax, edx, 0x12
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaed], al
mov edx, 1
imul eax, edx, 0x13
movzx ecx, byte [eax + str.EngineTraceClient003]
push ecx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xaec], al
xor edx, edx
mov byte [ebp - 0xaeb], dl
mov byte [ebp - 0xaea], 0
movzx eax, byte [ebp - 0xaea]
test eax, eax
jne 0x1001c791
mov dword [ebp - 0xd14], 0
jmp 0x1001c708
mov ecx, dword [ebp - 0xd14]
add ecx, 1
mov dword [ebp - 0xd14], ecx
cmp dword [ebp - 0xd14], 0x14
jae 0x1001c76e
lea edx, [ebp - 0xaff]
mov dword [ebp - 0x11ac], edx
mov eax, dword [ebp - 0xd14]
push eax
mov ecx, dword [ebp - 0x11ac]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xb00]
call fcn.100030a0
mov byte [ebp - 0xb76], al
lea eax, [ebp - 0xaff]
mov dword [ebp - 0x11b0], eax
mov ecx, dword [ebp - 0xd14]
push ecx
mov ecx, dword [ebp - 0x11b0]
call fcn.100030c0
mov dl, byte [ebp - 0xb76]
mov byte [eax], dl
jmp 0x1001c6f9
lea eax, [ebp - 0xaff]
mov dword [ebp - 0x11b4], eax
push 0x14
mov ecx, dword [ebp - 0x11b4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xaea], 1
lea ecx, [ebp - 0xaff]
call fcn.100030b0
mov dword [ebp - 0x1024], eax
mov byte [ebp - 0x550], 0x70
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x54a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x549], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x548], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x547], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0x546], al
xor eax, eax
mov byte [ebp - 0x545], al
mov byte [ebp - 0x544], 0
movzx ecx, byte [ebp - 0x544]
test ecx, ecx
jne 0x1001c9b4
mov dword [ebp - 0xd18], 0
jmp 0x1001c92b
mov edx, dword [ebp - 0xd18]
add edx, 1
mov dword [ebp - 0xd18], edx
cmp dword [ebp - 0xd18], 0xa
jae 0x1001c991
lea eax, [ebp - 0x54f]
mov dword [ebp - 0x11b8], eax
mov ecx, dword [ebp - 0xd18]
push ecx
mov ecx, dword [ebp - 0x11b8]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x550]
call fcn.100030a0
mov byte [ebp - 0xb77], al
lea ecx, [ebp - 0x54f]
mov dword [ebp - 0x11bc], ecx
mov edx, dword [ebp - 0xd18]
push edx
mov ecx, dword [ebp - 0x11bc]
call fcn.100030c0
mov cl, byte [ebp - 0xb77]
mov byte [eax], cl
jmp 0x1001c91c
lea edx, [ebp - 0x54f]
mov dword [ebp - 0x11c0], edx
push 0xa
mov ecx, dword [ebp - 0x11c0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x544], 1
lea ecx, [ebp - 0x54f]
call fcn.100030b0
mov dword [ebp - 0x1020], eax
xor eax, eax
je 0x1001d48f
mov ecx, dword [ebp - 0x1020]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x11d4], eax
mov byte [ebp - 0x89c], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x89b], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x89a], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x899], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x898], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x897], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x896], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x895], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x894], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x893], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x892], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x891], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x890], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x88f], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x88e], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0x88d], al
xor ecx, ecx
mov byte [ebp - 0x88c], cl
mov byte [ebp - 0x88b], 0
movzx edx, byte [ebp - 0x88b]
test edx, edx
jne 0x1001cc97
mov dword [ebp - 0xd1c], 0
jmp 0x1001cc0e
mov eax, dword [ebp - 0xd1c]
add eax, 1
mov dword [ebp - 0xd1c], eax
cmp dword [ebp - 0xd1c], 0xf
jae 0x1001cc74
lea ecx, [ebp - 0x89b]
mov dword [ebp - 0x11c4], ecx
mov edx, dword [ebp - 0xd1c]
push edx
mov ecx, dword [ebp - 0x11c4]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x89c]
call fcn.100030a0
mov byte [ebp - 0xb78], al
lea edx, [ebp - 0x89b]
mov dword [ebp - 0x11c8], edx
mov eax, dword [ebp - 0xd1c]
push eax
mov ecx, dword [ebp - 0x11c8]
call fcn.100030c0
mov cl, byte [ebp - 0xb78]
mov byte [eax], cl
jmp 0x1001cbff
lea edx, [ebp - 0x89b]
mov dword [ebp - 0x11cc], edx
push 0xf
mov ecx, dword [ebp - 0x11cc]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x88b], 1
lea ecx, [ebp - 0x89b]
call fcn.100030b0
mov dword [ebp - 0x11d0], eax
mov eax, dword [ebp - 0x11d0]
push eax
mov ecx, dword [ebp - 0x11d4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd20], eax
mov edx, dword [ebp - 0xd20]
add edx, 4
mov dword [ebp - 0xd20], edx
mov eax, dword [ebp - 0xd20]
mov dword [ebp - 0xb84], eax
mov ecx, dword [ebp - 0xb84]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x11d8], edx
mov eax, dword [ebp - 0xb84]
add eax, 5
mov dword [ebp - 0xb84], eax
mov ecx, dword [ebp - 0xb84]
add ecx, dword [ebp - 0x11d8]
mov dword [ebp - 0xb84], ecx
mov edx, dword [ebp - 0xb84]
mov dword [ebp - 0xd20], edx
mov dword [ebp - 0xe7c], 0
mov dword [ebp - 0x1018], 0xffffffff
mov eax, dword [ebp - 0xd20]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x6fc], edx
jmp 0x1001cd4f
mov eax, dword [ebp - 0x6fc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6fc], ecx
cmp dword [ebp - 0x6fc], 0
je 0x1001d459
push 0x40
push 0
lea edx, [ebp - 0x150]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6f8], 0
mov dword [ebp - 0x6f8], 0
jmp 0x1001cd94
mov eax, dword [ebp - 0x6f8]
add eax, 1
mov dword [ebp - 0x6f8], eax
mov ecx, dword [ebp - 0x6fc]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6f8]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x1001cded
mov edx, dword [ebp - 0x6fc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6f8]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001cded
mov eax, dword [ebp - 0x6fc]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6f8]
mov eax, dword [ebp - 0x6f8]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x150], cl
jmp 0x1001cd85
mov edx, dword [ebp - 0x6f8]
mov dword [ebp - 0x1004], edx
cmp dword [ebp - 0x1004], 0x40
jae 0x1001ce04
jmp 0x1001ce09
call fcn.100341c5
mov eax, dword [ebp - 0x1004]
mov byte [ebp + eax - 0x150], 0
mov ecx, dword [ebp - 0x1024]
mov dword [ebp - 0xdfc], ecx
lea edx, [ebp - 0x150]
mov dword [ebp - 0xe00], edx
mov eax, dword [ebp - 0xe00]
mov cl, byte [eax]
mov byte [ebp - 0xb79], cl
mov edx, dword [ebp - 0xdfc]
cmp cl, byte [edx]
jne 0x1001ce8d
cmp byte [ebp - 0xb79], 0
je 0x1001ce81
mov eax, dword [ebp - 0xe00]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb7a], cl
mov edx, dword [ebp - 0xdfc]
cmp cl, byte [edx + 1]
jne 0x1001ce8d
add dword [ebp - 0xe00], 2
add dword [ebp - 0xdfc], 2
cmp byte [ebp - 0xb7a], 0
jne 0x1001ce2f
mov dword [ebp - 0x1008], 0
jmp 0x1001ce98
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1008], eax
mov ecx, dword [ebp - 0x1008]
mov dword [ebp - 0x11dc], ecx
cmp dword [ebp - 0x11dc], 0
jne 0x1001d454
mov edx, dword [ebp - 0x6fc]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1b2c]
call fcn.10007f70
mov dword [ebp - 4], 5
mov byte [ebp - 0x540], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x53a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x539], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x538], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x537], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0x536], al
xor eax, eax
mov byte [ebp - 0x535], al
mov byte [ebp - 0x534], 0
movzx ecx, byte [ebp - 0x534]
test ecx, ecx
jne 0x1001d0df
mov dword [ebp - 0xd24], 0
jmp 0x1001d056
mov edx, dword [ebp - 0xd24]
add edx, 1
mov dword [ebp - 0xd24], edx
cmp dword [ebp - 0xd24], 0xa
jae 0x1001d0bc
lea eax, [ebp - 0x53f]
mov dword [ebp - 0x11e0], eax
mov ecx, dword [ebp - 0xd24]
push ecx
mov ecx, dword [ebp - 0x11e0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x540]
call fcn.100030a0
mov byte [ebp - 0xb7b], al
lea ecx, [ebp - 0x53f]
mov dword [ebp - 0x11e4], ecx
mov edx, dword [ebp - 0xd24]
push edx
mov ecx, dword [ebp - 0x11e4]
call fcn.100030c0
mov cl, byte [ebp - 0xb7b]
mov byte [eax], cl
jmp 0x1001d047
lea edx, [ebp - 0x53f]
mov dword [ebp - 0x11e8], edx
push 0xa
mov ecx, dword [ebp - 0x11e8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x534], 1
lea ecx, [ebp - 0x53f]
call fcn.100030b0
mov dword [ebp - 0x11ec], eax
push 0
mov eax, dword [ebp - 0x11ec]
push eax
lea ecx, [ebp - 0x1b2c]
call fcn.1002b450
mov dword [ebp - 0xdf8], eax
cmp dword [ebp - 0xdf8], 0xffffffff
je 0x1001d3c2
mov byte [ebp - 0x530], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x52a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x529], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x528], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x527], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0x526], al
xor eax, eax
mov byte [ebp - 0x525], al
mov byte [ebp - 0x524], 0
movzx ecx, byte [ebp - 0x524]
test ecx, ecx
jne 0x1001d329
mov dword [ebp - 0xd28], 0
jmp 0x1001d2a0
mov edx, dword [ebp - 0xd28]
add edx, 1
mov dword [ebp - 0xd28], edx
cmp dword [ebp - 0xd28], 0xa
jae 0x1001d306
lea eax, [ebp - 0x52f]
mov dword [ebp - 0x11f0], eax
mov ecx, dword [ebp - 0xd28]
push ecx
mov ecx, dword [ebp - 0x11f0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x530]
call fcn.100030a0
mov byte [ebp - 0xb7c], al
lea ecx, [ebp - 0x52f]
mov dword [ebp - 0x11f4], ecx
mov edx, dword [ebp - 0xd28]
push edx
mov ecx, dword [ebp - 0x11f4]
call fcn.100030c0
mov cl, byte [ebp - 0xb7c]
mov byte [eax], cl
jmp 0x1001d291
lea edx, [ebp - 0x52f]
mov dword [ebp - 0x11f8], edx
push 0xa
mov ecx, dword [ebp - 0x11f8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x524], 1
lea ecx, [ebp - 0x52f]
call fcn.100030b0
mov dword [ebp - 0x11fc], eax
mov eax, dword [ebp - 0xdf8]
push eax
mov ecx, dword [ebp - 0x11fc]
push ecx
lea ecx, [ebp - 0x1b2c]
call fcn.1002b3f0
mov dword [ebp - 0xe78], eax
cmp dword [ebp - 0xe78], 0xffffffff
je 0x1001d376
mov edx, dword [ebp - 0xe78]
sub edx, dword [ebp - 0xdf8]
mov dword [ebp - 0x100c], edx
jmp 0x1001d382
mov eax, dword [ebp - 0xe78]
mov dword [ebp - 0x100c], eax
mov ecx, dword [ebp - 0x100c]
push ecx
mov edx, dword [ebp - 0xdf8]
push edx
lea eax, [ebp - 0x1b14]
push eax
lea ecx, [ebp - 0x1b2c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x400
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1b14]
mov dword [ebp - 0x1010], edx
jmp 0x1001d3ea
lea ecx, [ebp - 0x1b14]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x400
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1b14]
mov dword [ebp - 0x1010], ecx
mov edx, dword [ebp - 0x1010]
mov dword [ebp - 0x1200], edx
mov ecx, dword [ebp - 0x1200]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x1014], eax
lea ecx, [ebp - 0x1b14]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b2c]
call fcn.10007f20
mov eax, dword [ebp - 0x1014]
cmp eax, dword [ebp - 0x1018]
jle 0x1001d454
mov ecx, dword [ebp - 0x1014]
mov dword [ebp - 0x1018], ecx
mov edx, dword [ebp - 0x6fc]
mov dword [ebp - 0xe7c], edx
jmp 0x1001cd40
cmp dword [ebp - 0xe7c], 0
jne 0x1001d46e
mov dword [ebp - 0x101c], 0
jmp 0x1001d47e
mov eax, dword [ebp - 0xe7c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x101c], eax
mov edx, dword [ebp - 0x101c]
mov dword [ebp - 0x1028], edx
jmp 0x1001d7c0
mov byte [ebp - 0x8b0], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8af], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8ae], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8ad], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8ac], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8ab], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8aa], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a6], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a5], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a4], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a3], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a2], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0x8a1], al
xor edx, edx
mov byte [ebp - 0x8a0], dl
mov byte [ebp - 0x89f], 0
movzx eax, byte [ebp - 0x89f]
test eax, eax
jne 0x1001d746
mov dword [ebp - 0xd2c], 0
jmp 0x1001d6bd
mov ecx, dword [ebp - 0xd2c]
add ecx, 1
mov dword [ebp - 0xd2c], ecx
cmp dword [ebp - 0xd2c], 0xf
jae 0x1001d723
lea edx, [ebp - 0x8af]
mov dword [ebp - 0x1204], edx
mov eax, dword [ebp - 0xd2c]
push eax
mov ecx, dword [ebp - 0x1204]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x8b0]
call fcn.100030a0
mov byte [ebp - 0xb01], al
lea eax, [ebp - 0x8af]
mov dword [ebp - 0x1208], eax
mov ecx, dword [ebp - 0xd2c]
push ecx
mov ecx, dword [ebp - 0x1208]
call fcn.100030c0
mov dl, byte [ebp - 0xb01]
mov byte [eax], dl
jmp 0x1001d6ae
lea eax, [ebp - 0x8af]
mov dword [ebp - 0x120c], eax
push 0xf
mov ecx, dword [ebp - 0x120c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x89f], 1
lea ecx, [ebp - 0x8af]
call fcn.100030b0
mov dword [ebp - 0x1210], eax
mov ecx, dword [ebp - 0x1020]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1214], eax
mov edx, dword [ebp - 0x1210]
push edx
mov eax, dword [ebp - 0x1214]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1218], eax
mov ecx, dword [ebp - 0x1218]
mov dword [ebp - 0x121c], ecx
mov edx, dword [ebp - 0x121c]
mov dword [ebp - 0x1220], edx
push 0
mov eax, dword [ebp - 0x1024]
push eax
call dword [ebp - 0x1220]
add esp, 8
mov dword [ebp - 0x1224], eax
mov ecx, dword [ebp - 0x1224]
mov dword [ebp - 0x1028], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1028]
mov dword [edx + 0x1c], eax
mov byte [ebp - 0xab8], 0x37
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineRenderView013]
push eax
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab7], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab6], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab5], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab4], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineRenderView013]
push eax
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab3], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineRenderView013]
push eax
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab2], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineRenderView013]
push eax
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab1], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineRenderView013]
push eax
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xab0], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaaf], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaae], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaad], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaac], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaab], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaaa], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa9], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VEngineRenderView013]
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa8], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa7], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa6], al
mov edx, 1
imul eax, edx, 0x12
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa5], al
mov edx, 1
imul eax, edx, 0x13
movzx ecx, byte [eax + str.VEngineRenderView013]
push ecx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xaa4], al
xor edx, edx
mov byte [ebp - 0xaa3], dl
mov byte [ebp - 0xaa2], 0
movzx eax, byte [ebp - 0xaa2]
test eax, eax
jne 0x1001db28
mov dword [ebp - 0xd30], 0
jmp 0x1001da9f
mov ecx, dword [ebp - 0xd30]
add ecx, 1
mov dword [ebp - 0xd30], ecx
cmp dword [ebp - 0xd30], 0x14
jae 0x1001db05
lea edx, [ebp - 0xab7]
mov dword [ebp - 0x1228], edx
mov eax, dword [ebp - 0xd30]
push eax
mov ecx, dword [ebp - 0x1228]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xab8]
call fcn.100030a0
mov byte [ebp - 0xb02], al
lea eax, [ebp - 0xab7]
mov dword [ebp - 0x122c], eax
mov ecx, dword [ebp - 0xd30]
push ecx
mov ecx, dword [ebp - 0x122c]
call fcn.100030c0
mov dl, byte [ebp - 0xb02]
mov byte [eax], dl
jmp 0x1001da90
lea eax, [ebp - 0xab7]
mov dword [ebp - 0x1230], eax
push 0x14
mov ecx, dword [ebp - 0x1230]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xaa2], 1
lea ecx, [ebp - 0xab7]
call fcn.100030b0
mov dword [ebp - 0x104c], eax
mov byte [ebp - 0x520], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x51a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x519], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x518], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x517], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0x516], al
xor eax, eax
mov byte [ebp - 0x515], al
mov byte [ebp - 0x514], 0
movzx ecx, byte [ebp - 0x514]
test ecx, ecx
jne 0x1001dd4b
mov dword [ebp - 0xd34], 0
jmp 0x1001dcc2
mov edx, dword [ebp - 0xd34]
add edx, 1
mov dword [ebp - 0xd34], edx
cmp dword [ebp - 0xd34], 0xa
jae 0x1001dd28
lea eax, [ebp - 0x51f]
mov dword [ebp - 0x1234], eax
mov ecx, dword [ebp - 0xd34]
push ecx
mov ecx, dword [ebp - 0x1234]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x520]
call fcn.100030a0
mov byte [ebp - 0xb03], al
lea ecx, [ebp - 0x51f]
mov dword [ebp - 0x1238], ecx
mov edx, dword [ebp - 0xd34]
push edx
mov ecx, dword [ebp - 0x1238]
call fcn.100030c0
mov cl, byte [ebp - 0xb03]
mov byte [eax], cl
jmp 0x1001dcb3
lea edx, [ebp - 0x51f]
mov dword [ebp - 0x123c], edx
push 0xa
mov ecx, dword [ebp - 0x123c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x514], 1
lea ecx, [ebp - 0x51f]
call fcn.100030b0
mov dword [ebp - 0x1048], eax
xor eax, eax
je 0x1001e826
mov ecx, dword [ebp - 0x1048]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1250], eax
mov byte [ebp - 0x8c4], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8c3], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8c2], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8c1], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8c0], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8bf], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8be], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8bd], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8bc], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8bb], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8ba], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8b9], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8b8], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8b7], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8b6], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0x8b5], al
xor ecx, ecx
mov byte [ebp - 0x8b4], cl
mov byte [ebp - 0x8b3], 0
movzx edx, byte [ebp - 0x8b3]
test edx, edx
jne 0x1001e02e
mov dword [ebp - 0xd38], 0
jmp 0x1001dfa5
mov eax, dword [ebp - 0xd38]
add eax, 1
mov dword [ebp - 0xd38], eax
cmp dword [ebp - 0xd38], 0xf
jae 0x1001e00b
lea ecx, [ebp - 0x8c3]
mov dword [ebp - 0x1240], ecx
mov edx, dword [ebp - 0xd38]
push edx
mov ecx, dword [ebp - 0x1240]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x8c4]
call fcn.100030a0
mov byte [ebp - 0xb04], al
lea edx, [ebp - 0x8c3]
mov dword [ebp - 0x1244], edx
mov eax, dword [ebp - 0xd38]
push eax
mov ecx, dword [ebp - 0x1244]
call fcn.100030c0
mov cl, byte [ebp - 0xb04]
mov byte [eax], cl
jmp 0x1001df96
lea edx, [ebp - 0x8c3]
mov dword [ebp - 0x1248], edx
push 0xf
mov ecx, dword [ebp - 0x1248]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x8b3], 1
lea ecx, [ebp - 0x8c3]
call fcn.100030b0
mov dword [ebp - 0x124c], eax
mov eax, dword [ebp - 0x124c]
push eax
mov ecx, dword [ebp - 0x1250]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd3c], eax
mov edx, dword [ebp - 0xd3c]
add edx, 4
mov dword [ebp - 0xd3c], edx
mov eax, dword [ebp - 0xd3c]
mov dword [ebp - 0xb88], eax
mov ecx, dword [ebp - 0xb88]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x1254], edx
mov eax, dword [ebp - 0xb88]
add eax, 5
mov dword [ebp - 0xb88], eax
mov ecx, dword [ebp - 0xb88]
add ecx, dword [ebp - 0x1254]
mov dword [ebp - 0xb88], ecx
mov edx, dword [ebp - 0xb88]
mov dword [ebp - 0xd3c], edx
mov dword [ebp - 0xe84], 0
mov dword [ebp - 0x1040], 0xffffffff
mov eax, dword [ebp - 0xd3c]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x704], edx
jmp 0x1001e0e6
mov eax, dword [ebp - 0x704]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x704], ecx
cmp dword [ebp - 0x704], 0
je 0x1001e7f0
push 0x40
push 0
lea edx, [ebp - 0x110]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x700], 0
mov dword [ebp - 0x700], 0
jmp 0x1001e12b
mov eax, dword [ebp - 0x700]
add eax, 1
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x704]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x700]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x1001e184
mov edx, dword [ebp - 0x704]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x700]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001e184
mov eax, dword [ebp - 0x704]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x700]
mov eax, dword [ebp - 0x700]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x110], cl
jmp 0x1001e11c
mov edx, dword [ebp - 0x700]
mov dword [ebp - 0x102c], edx
cmp dword [ebp - 0x102c], 0x40
jae 0x1001e19b
jmp 0x1001e1a0
call fcn.100341c5
mov eax, dword [ebp - 0x102c]
mov byte [ebp + eax - 0x110], 0
mov ecx, dword [ebp - 0x104c]
mov dword [ebp - 0xdf0], ecx
lea edx, [ebp - 0x110]
mov dword [ebp - 0xdf4], edx
mov eax, dword [ebp - 0xdf4]
mov cl, byte [eax]
mov byte [ebp - 0xb05], cl
mov edx, dword [ebp - 0xdf0]
cmp cl, byte [edx]
jne 0x1001e224
cmp byte [ebp - 0xb05], 0
je 0x1001e218
mov eax, dword [ebp - 0xdf4]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb06], cl
mov edx, dword [ebp - 0xdf0]
cmp cl, byte [edx + 1]
jne 0x1001e224
add dword [ebp - 0xdf4], 2
add dword [ebp - 0xdf0], 2
cmp byte [ebp - 0xb06], 0
jne 0x1001e1c6
mov dword [ebp - 0x1030], 0
jmp 0x1001e22f
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1030], eax
mov ecx, dword [ebp - 0x1030]
mov dword [ebp - 0x1258], ecx
cmp dword [ebp - 0x1258], 0
jne 0x1001e7eb
mov edx, dword [ebp - 0x704]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1b5c]
call fcn.10007f70
mov dword [ebp - 4], 6
mov byte [ebp - 0x510], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x50a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x509], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x508], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x507], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0x506], al
xor eax, eax
mov byte [ebp - 0x505], al
mov byte [ebp - 0x504], 0
movzx ecx, byte [ebp - 0x504]
test ecx, ecx
jne 0x1001e476
mov dword [ebp - 0xbbc], 0
jmp 0x1001e3ed
mov edx, dword [ebp - 0xbbc]
add edx, 1
mov dword [ebp - 0xbbc], edx
cmp dword [ebp - 0xbbc], 0xa
jae 0x1001e453
lea eax, [ebp - 0x50f]
mov dword [ebp - 0x125c], eax
mov ecx, dword [ebp - 0xbbc]
push ecx
mov ecx, dword [ebp - 0x125c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x510]
call fcn.100030a0
mov byte [ebp - 0xb07], al
lea ecx, [ebp - 0x50f]
mov dword [ebp - 0x1260], ecx
mov edx, dword [ebp - 0xbbc]
push edx
mov ecx, dword [ebp - 0x1260]
call fcn.100030c0
mov cl, byte [ebp - 0xb07]
mov byte [eax], cl
jmp 0x1001e3de
lea edx, [ebp - 0x50f]
mov dword [ebp - 0x1264], edx
push 0xa
mov ecx, dword [ebp - 0x1264]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x504], 1
lea ecx, [ebp - 0x50f]
call fcn.100030b0
mov dword [ebp - 0x1268], eax
push 0
mov eax, dword [ebp - 0x1268]
push eax
lea ecx, [ebp - 0x1b5c]
call fcn.1002b450
mov dword [ebp - 0xdec], eax
cmp dword [ebp - 0xdec], 0xffffffff
je 0x1001e759
mov byte [ebp - 0x500], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4ff], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4fe], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4fd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4fc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4fb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4fa], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4f9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4f8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4f7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0x4f6], al
xor eax, eax
mov byte [ebp - 0x4f5], al
mov byte [ebp - 0x4f4], 0
movzx ecx, byte [ebp - 0x4f4]
test ecx, ecx
jne 0x1001e6c0
mov dword [ebp - 0xbc0], 0
jmp 0x1001e637
mov edx, dword [ebp - 0xbc0]
add edx, 1
mov dword [ebp - 0xbc0], edx
cmp dword [ebp - 0xbc0], 0xa
jae 0x1001e69d
lea eax, [ebp - 0x4ff]
mov dword [ebp - 0x126c], eax
mov ecx, dword [ebp - 0xbc0]
push ecx
mov ecx, dword [ebp - 0x126c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x500]
call fcn.100030a0
mov byte [ebp - 0xb08], al
lea ecx, [ebp - 0x4ff]
mov dword [ebp - 0x1270], ecx
mov edx, dword [ebp - 0xbc0]
push edx
mov ecx, dword [ebp - 0x1270]
call fcn.100030c0
mov cl, byte [ebp - 0xb08]
mov byte [eax], cl
jmp 0x1001e628
lea edx, [ebp - 0x4ff]
mov dword [ebp - 0x1274], edx
push 0xa
mov ecx, dword [ebp - 0x1274]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4f4], 1
lea ecx, [ebp - 0x4ff]
call fcn.100030b0
mov dword [ebp - 0x1278], eax
mov eax, dword [ebp - 0xdec]
push eax
mov ecx, dword [ebp - 0x1278]
push ecx
lea ecx, [ebp - 0x1b5c]
call fcn.1002b3f0
mov dword [ebp - 0xe80], eax
cmp dword [ebp - 0xe80], 0xffffffff
je 0x1001e70d
mov edx, dword [ebp - 0xe80]
sub edx, dword [ebp - 0xdec]
mov dword [ebp - 0x1034], edx
jmp 0x1001e719
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0x1034], eax
mov ecx, dword [ebp - 0x1034]
push ecx
mov edx, dword [ebp - 0xdec]
push edx
lea eax, [ebp - 0x1b44]
push eax
lea ecx, [ebp - 0x1b5c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x1000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1b44]
mov dword [ebp - 0x1038], edx
jmp 0x1001e781
lea ecx, [ebp - 0x1b44]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x1000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1b44]
mov dword [ebp - 0x1038], ecx
mov edx, dword [ebp - 0x1038]
mov dword [ebp - 0x127c], edx
mov ecx, dword [ebp - 0x127c]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x103c], eax
lea ecx, [ebp - 0x1b44]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1b5c]
call fcn.10007f20
mov eax, dword [ebp - 0x103c]
cmp eax, dword [ebp - 0x1040]
jle 0x1001e7eb
mov ecx, dword [ebp - 0x103c]
mov dword [ebp - 0x1040], ecx
mov edx, dword [ebp - 0x704]
mov dword [ebp - 0xe84], edx
jmp 0x1001e0d7
cmp dword [ebp - 0xe84], 0
jne 0x1001e805
mov dword [ebp - 0x1044], 0
jmp 0x1001e815
mov eax, dword [ebp - 0xe84]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x1044], eax
mov edx, dword [ebp - 0x1044]
mov dword [ebp - 0x1050], edx
jmp 0x1001eb57
mov byte [ebp - 0x7ac], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7ab], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7aa], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a9], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a8], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a7], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a6], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a5], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a4], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a3], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a2], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a1], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x7a0], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x79f], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x79e], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0x79d], al
xor edx, edx
mov byte [ebp - 0x79c], dl
mov byte [ebp - 0x79b], 0
movzx eax, byte [ebp - 0x79b]
test eax, eax
jne 0x1001eadd
mov dword [ebp - 0xbc4], 0
jmp 0x1001ea54
mov ecx, dword [ebp - 0xbc4]
add ecx, 1
mov dword [ebp - 0xbc4], ecx
cmp dword [ebp - 0xbc4], 0xf
jae 0x1001eaba
lea edx, [ebp - 0x7ab]
mov dword [ebp - 0x1280], edx
mov eax, dword [ebp - 0xbc4]
push eax
mov ecx, dword [ebp - 0x1280]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x7ac]
call fcn.100030a0
mov byte [ebp - 0xb09], al
lea eax, [ebp - 0x7ab]
mov dword [ebp - 0x1284], eax
mov ecx, dword [ebp - 0xbc4]
push ecx
mov ecx, dword [ebp - 0x1284]
call fcn.100030c0
mov dl, byte [ebp - 0xb09]
mov byte [eax], dl
jmp 0x1001ea45
lea eax, [ebp - 0x7ab]
mov dword [ebp - 0x1288], eax
push 0xf
mov ecx, dword [ebp - 0x1288]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x79b], 1
lea ecx, [ebp - 0x7ab]
call fcn.100030b0
mov dword [ebp - 0x128c], eax
mov ecx, dword [ebp - 0x1048]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1290], eax
mov edx, dword [ebp - 0x128c]
push edx
mov eax, dword [ebp - 0x1290]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1294], eax
mov ecx, dword [ebp - 0x1294]
mov dword [ebp - 0x1298], ecx
mov edx, dword [ebp - 0x1298]
mov dword [ebp - 0x129c], edx
push 0
mov eax, dword [ebp - 0x104c]
push eax
call dword [ebp - 0x129c]
add esp, 8
mov dword [ebp - 0x12a0], eax
mov ecx, dword [ebp - 0x12a0]
mov dword [ebp - 0x1050], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1050]
mov dword [edx + 0x20], eax
mov byte [ebp - 0x8d8], 0x21
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineModel016]
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d7], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d6], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineModel016]
push ecx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d5], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineModel016]
push ecx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d4], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineModel016]
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d3], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineModel016]
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d2], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineModel016]
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d1], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineModel016]
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8d0], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8cf], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8ce], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8cd], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8cc], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8cb], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8ca], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VEngineModel016]
push edx
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0x8c9], al
xor eax, eax
mov byte [ebp - 0x8c8], al
mov byte [ebp - 0x8c7], 0
movzx ecx, byte [ebp - 0x8c7]
test ecx, ecx
jne 0x1001ee1a
mov dword [ebp - 0xbc8], 0
jmp 0x1001ed91
mov edx, dword [ebp - 0xbc8]
add edx, 1
mov dword [ebp - 0xbc8], edx
cmp dword [ebp - 0xbc8], 0xf
jae 0x1001edf7
lea eax, [ebp - 0x8d7]
mov dword [ebp - 0x12a4], eax
mov ecx, dword [ebp - 0xbc8]
push ecx
mov ecx, dword [ebp - 0x12a4]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x8d8]
call fcn.100030a0
mov byte [ebp - 0xb0a], al
lea ecx, [ebp - 0x8d7]
mov dword [ebp - 0x12a8], ecx
mov edx, dword [ebp - 0xbc8]
push edx
mov ecx, dword [ebp - 0x12a8]
call fcn.100030c0
mov cl, byte [ebp - 0xb0a]
mov byte [eax], cl
jmp 0x1001ed82
lea edx, [ebp - 0x8d7]
mov dword [ebp - 0x12ac], edx
push 0xf
mov ecx, dword [ebp - 0x12ac]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x8c7], 1
lea ecx, [ebp - 0x8d7]
call fcn.100030b0
mov dword [ebp - 0x1074], eax
mov byte [ebp - 0x4f0], 0x60
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4ef], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4ee], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4ed], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4ec], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4eb], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4ea], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4e9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4e8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4e7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0x4e6], al
xor edx, edx
mov byte [ebp - 0x4e5], dl
mov byte [ebp - 0x4e4], 0
movzx eax, byte [ebp - 0x4e4]
test eax, eax
jne 0x1001f03d
mov dword [ebp - 0xbcc], 0
jmp 0x1001efb4
mov ecx, dword [ebp - 0xbcc]
add ecx, 1
mov dword [ebp - 0xbcc], ecx
cmp dword [ebp - 0xbcc], 0xa
jae 0x1001f01a
lea edx, [ebp - 0x4ef]
mov dword [ebp - 0x12b0], edx
mov eax, dword [ebp - 0xbcc]
push eax
mov ecx, dword [ebp - 0x12b0]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x4f0]
call fcn.100030a0
mov byte [ebp - 0xb0b], al
lea eax, [ebp - 0x4ef]
mov dword [ebp - 0x12b4], eax
mov ecx, dword [ebp - 0xbcc]
push ecx
mov ecx, dword [ebp - 0x12b4]
call fcn.100030c0
mov dl, byte [ebp - 0xb0b]
mov byte [eax], dl
jmp 0x1001efa5
lea eax, [ebp - 0x4ef]
mov dword [ebp - 0x12b8], eax
push 0xa
mov ecx, dword [ebp - 0x12b8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4e4], 1
lea ecx, [ebp - 0x4ef]
call fcn.100030b0
mov dword [ebp - 0x1070], eax
xor ecx, ecx
je 0x1001fb18
mov edx, dword [ebp - 0x1070]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x12cc], eax
mov byte [ebp - 0x8ec], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8eb], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8ea], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e9], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e8], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e7], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e6], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e5], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e4], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e3], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e2], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e1], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8e0], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8df], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8de], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0x8dd], al
xor edx, edx
mov byte [ebp - 0x8dc], dl
mov byte [ebp - 0x8db], 0
movzx eax, byte [ebp - 0x8db]
test eax, eax
jne 0x1001f320
mov dword [ebp - 0xbd0], 0
jmp 0x1001f297
mov ecx, dword [ebp - 0xbd0]
add ecx, 1
mov dword [ebp - 0xbd0], ecx
cmp dword [ebp - 0xbd0], 0xf
jae 0x1001f2fd
lea edx, [ebp - 0x8eb]
mov dword [ebp - 0x12bc], edx
mov eax, dword [ebp - 0xbd0]
push eax
mov ecx, dword [ebp - 0x12bc]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x8ec]
call fcn.100030a0
mov byte [ebp - 0xb0c], al
lea eax, [ebp - 0x8eb]
mov dword [ebp - 0x12c0], eax
mov ecx, dword [ebp - 0xbd0]
push ecx
mov ecx, dword [ebp - 0x12c0]
call fcn.100030c0
mov dl, byte [ebp - 0xb0c]
mov byte [eax], dl
jmp 0x1001f288
lea eax, [ebp - 0x8eb]
mov dword [ebp - 0x12c4], eax
push 0xf
mov ecx, dword [ebp - 0x12c4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x8db], 1
lea ecx, [ebp - 0x8eb]
call fcn.100030b0
mov dword [ebp - 0x12c8], eax
mov ecx, dword [ebp - 0x12c8]
push ecx
mov edx, dword [ebp - 0x12cc]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xbd4], eax
mov eax, dword [ebp - 0xbd4]
add eax, 4
mov dword [ebp - 0xbd4], eax
mov ecx, dword [ebp - 0xbd4]
mov dword [ebp - 0xb8c], ecx
mov edx, dword [ebp - 0xb8c]
mov eax, dword [edx + 1]
mov dword [ebp - 0x12d0], eax
mov ecx, dword [ebp - 0xb8c]
add ecx, 5
mov dword [ebp - 0xb8c], ecx
mov edx, dword [ebp - 0xb8c]
add edx, dword [ebp - 0x12d0]
mov dword [ebp - 0xb8c], edx
mov eax, dword [ebp - 0xb8c]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xe8c], 0
mov dword [ebp - 0x1068], 0xffffffff
mov ecx, dword [ebp - 0xbd4]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x70c], eax
jmp 0x1001f3d8
mov ecx, dword [ebp - 0x70c]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x70c], edx
cmp dword [ebp - 0x70c], 0
je 0x1001fae2
push 0x40
push 0
lea eax, [ebp - 0xd0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x708], 0
mov dword [ebp - 0x708], 0
jmp 0x1001f41d
mov ecx, dword [ebp - 0x708]
add ecx, 1
mov dword [ebp - 0x708], ecx
mov edx, dword [ebp - 0x70c]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x708]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x1001f476
mov eax, dword [ebp - 0x70c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x708]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1001f476
mov ecx, dword [ebp - 0x70c]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x708]
mov ecx, dword [ebp - 0x708]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0xd0], dl
jmp 0x1001f40e
mov eax, dword [ebp - 0x708]
mov dword [ebp - 0x1054], eax
cmp dword [ebp - 0x1054], 0x40
jae 0x1001f48d
jmp 0x1001f492
call fcn.100341c5
mov ecx, dword [ebp - 0x1054]
mov byte [ebp + ecx - 0xd0], 0
mov edx, dword [ebp - 0x1074]
mov dword [ebp - 0xde0], edx
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xde8], eax
mov ecx, dword [ebp - 0xde8]
mov dl, byte [ecx]
mov byte [ebp - 0xb0d], dl
mov eax, dword [ebp - 0xde0]
cmp dl, byte [eax]
jne 0x1001f516
cmp byte [ebp - 0xb0d], 0
je 0x1001f50a
mov ecx, dword [ebp - 0xde8]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb0e], dl
mov eax, dword [ebp - 0xde0]
cmp dl, byte [eax + 1]
jne 0x1001f516
add dword [ebp - 0xde8], 2
add dword [ebp - 0xde0], 2
cmp byte [ebp - 0xb0e], 0
jne 0x1001f4b8
mov dword [ebp - 0x1058], 0
jmp 0x1001f521
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x1058], ecx
mov edx, dword [ebp - 0x1058]
mov dword [ebp - 0x12d4], edx
cmp dword [ebp - 0x12d4], 0
jne 0x1001fadd
mov eax, dword [ebp - 0x70c]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x18bc]
call fcn.10007f70
mov dword [ebp - 4], 7
mov byte [ebp - 0x4e0], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4df], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4de], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4dd], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4dc], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4db], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4da], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4d9], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4d8], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4d7], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0x4d6], al
xor ecx, ecx
mov byte [ebp - 0x4d5], cl
mov byte [ebp - 0x4d4], 0
movzx edx, byte [ebp - 0x4d4]
test edx, edx
jne 0x1001f768
mov dword [ebp - 0xbd8], 0
jmp 0x1001f6df
mov eax, dword [ebp - 0xbd8]
add eax, 1
mov dword [ebp - 0xbd8], eax
cmp dword [ebp - 0xbd8], 0xa
jae 0x1001f745
lea ecx, [ebp - 0x4df]
mov dword [ebp - 0x12d8], ecx
mov edx, dword [ebp - 0xbd8]
push edx
mov ecx, dword [ebp - 0x12d8]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x4e0]
call fcn.100030a0
mov byte [ebp - 0xb0f], al
lea edx, [ebp - 0x4df]
mov dword [ebp - 0x12dc], edx
mov eax, dword [ebp - 0xbd8]
push eax
mov ecx, dword [ebp - 0x12dc]
call fcn.100030c0
mov cl, byte [ebp - 0xb0f]
mov byte [eax], cl
jmp 0x1001f6d0
lea edx, [ebp - 0x4df]
mov dword [ebp - 0x12e0], edx
push 0xa
mov ecx, dword [ebp - 0x12e0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4d4], 1
lea ecx, [ebp - 0x4df]
call fcn.100030b0
mov dword [ebp - 0x12e4], eax
push 0
mov eax, dword [ebp - 0x12e4]
push eax
lea ecx, [ebp - 0x18bc]
call fcn.1002b450
mov dword [ebp - 0xddc], eax
cmp dword [ebp - 0xddc], 0xffffffff
je 0x1001fa4b
mov byte [ebp - 0x4d0], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4cf], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4ce], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4cd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4cc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4cb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4ca], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4c9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4c8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4c7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0x4c6], al
xor eax, eax
mov byte [ebp - 0x4c5], al
mov byte [ebp - 0x4c4], 0
movzx ecx, byte [ebp - 0x4c4]
test ecx, ecx
jne 0x1001f9b2
mov dword [ebp - 0xbdc], 0
jmp 0x1001f929
mov edx, dword [ebp - 0xbdc]
add edx, 1
mov dword [ebp - 0xbdc], edx
cmp dword [ebp - 0xbdc], 0xa
jae 0x1001f98f
lea eax, [ebp - 0x4cf]
mov dword [ebp - 0x12e8], eax
mov ecx, dword [ebp - 0xbdc]
push ecx
mov ecx, dword [ebp - 0x12e8]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x4d0]
call fcn.100030a0
mov byte [ebp - 0xb10], al
lea ecx, [ebp - 0x4cf]
mov dword [ebp - 0x12ec], ecx
mov edx, dword [ebp - 0xbdc]
push edx
mov ecx, dword [ebp - 0x12ec]
call fcn.100030c0
mov cl, byte [ebp - 0xb10]
mov byte [eax], cl
jmp 0x1001f91a
lea edx, [ebp - 0x4cf]
mov dword [ebp - 0x12f0], edx
push 0xa
mov ecx, dword [ebp - 0x12f0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4c4], 1
lea ecx, [ebp - 0x4cf]
call fcn.100030b0
mov dword [ebp - 0x12f4], eax
mov eax, dword [ebp - 0xddc]
push eax
mov ecx, dword [ebp - 0x12f4]
push ecx
lea ecx, [ebp - 0x18bc]
call fcn.1002b3f0
mov dword [ebp - 0xe88], eax
cmp dword [ebp - 0xe88], 0xffffffff
je 0x1001f9ff
mov edx, dword [ebp - 0xe88]
sub edx, dword [ebp - 0xddc]
mov dword [ebp - 0x105c], edx
jmp 0x1001fa0b
mov eax, dword [ebp - 0xe88]
mov dword [ebp - 0x105c], eax
mov ecx, dword [ebp - 0x105c]
push ecx
mov edx, dword [ebp - 0xddc]
push edx
lea eax, [ebp - 0x18a4]
push eax
lea ecx, [ebp - 0x18bc]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x4000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x18a4]
mov dword [ebp - 0x1060], edx
jmp 0x1001fa73
lea ecx, [ebp - 0x18a4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x4000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x18a4]
mov dword [ebp - 0x1060], ecx
mov edx, dword [ebp - 0x1060]
mov dword [ebp - 0x12f8], edx
mov ecx, dword [ebp - 0x12f8]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x1064], eax
lea ecx, [ebp - 0x18a4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18bc]
call fcn.10007f20
mov eax, dword [ebp - 0x1064]
cmp eax, dword [ebp - 0x1068]
jle 0x1001fadd
mov ecx, dword [ebp - 0x1064]
mov dword [ebp - 0x1068], ecx
mov edx, dword [ebp - 0x70c]
mov dword [ebp - 0xe8c], edx
jmp 0x1001f3c9
cmp dword [ebp - 0xe8c], 0
jne 0x1001faf7
mov dword [ebp - 0x106c], 0
jmp 0x1001fb07
mov eax, dword [ebp - 0xe8c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x106c], eax
mov edx, dword [ebp - 0x106c]
mov dword [ebp - 0x1078], edx
jmp 0x1001fe49
mov byte [ebp - 0x900], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8ff], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8fe], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8fd], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8fc], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8fb], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8fa], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f6], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f5], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f4], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f3], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f2], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0x8f1], al
xor edx, edx
mov byte [ebp - 0x8f0], dl
mov byte [ebp - 0x8ef], 0
movzx eax, byte [ebp - 0x8ef]
test eax, eax
jne 0x1001fdcf
mov dword [ebp - 0xbe0], 0
jmp 0x1001fd46
mov ecx, dword [ebp - 0xbe0]
add ecx, 1
mov dword [ebp - 0xbe0], ecx
cmp dword [ebp - 0xbe0], 0xf
jae 0x1001fdac
lea edx, [ebp - 0x8ff]
mov dword [ebp - 0x12fc], edx
mov eax, dword [ebp - 0xbe0]
push eax
mov ecx, dword [ebp - 0x12fc]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x900]
call fcn.100030a0
mov byte [ebp - 0xb11], al
lea eax, [ebp - 0x8ff]
mov dword [ebp - 0x1300], eax
mov ecx, dword [ebp - 0xbe0]
push ecx
mov ecx, dword [ebp - 0x1300]
call fcn.100030c0
mov dl, byte [ebp - 0xb11]
mov byte [eax], dl
jmp 0x1001fd37
lea eax, [ebp - 0x8ff]
mov dword [ebp - 0x1304], eax
push 0xf
mov ecx, dword [ebp - 0x1304]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x8ef], 1
lea ecx, [ebp - 0x8ff]
call fcn.100030b0
mov dword [ebp - 0x1308], eax
mov ecx, dword [ebp - 0x1070]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x130c], eax
mov edx, dword [ebp - 0x1308]
push edx
mov eax, dword [ebp - 0x130c]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1310], eax
mov ecx, dword [ebp - 0x1310]
mov dword [ebp - 0x1314], ecx
mov edx, dword [ebp - 0x1314]
mov dword [ebp - 0x1318], edx
push 0
mov eax, dword [ebp - 0x1074]
push eax
call dword [ebp - 0x1318]
add esp, 8
mov dword [ebp - 0x131c], eax
mov ecx, dword [ebp - 0x131c]
mov dword [ebp - 0x1078], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1078]
mov dword [edx + 0x24], eax
mov byte [ebp - 0xaa0], 0x1d
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VModelInfoClient004]
push eax
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VModelInfoClient004]
push ecx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VModelInfoClient004]
push ecx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VModelInfoClient004]
push eax
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VModelInfoClient004]
push eax
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa9a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VModelInfoClient004]
push eax
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa99], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VModelInfoClient004]
push eax
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa98], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa97], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa96], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa95], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa94], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa93], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa92], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa91], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VModelInfoClient004]
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa90], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VModelInfoClient004]
push ecx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa8f], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.VModelInfoClient004]
push ecx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa8e], al
mov edx, 1
imul eax, edx, 0x12
movzx ecx, byte [eax + str.VModelInfoClient004]
push ecx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xa8d], al
xor edx, edx
mov byte [ebp - 0xa8c], dl
mov byte [ebp - 0xa8b], 0
movzx eax, byte [ebp - 0xa8b]
test eax, eax
jne 0x10020190
mov dword [ebp - 0xbe4], 0
jmp 0x10020107
mov ecx, dword [ebp - 0xbe4]
add ecx, 1
mov dword [ebp - 0xbe4], ecx
cmp dword [ebp - 0xbe4], 0x13
jae 0x1002016d
lea edx, [ebp - 0xa9f]
mov dword [ebp - 0x1320], edx
mov eax, dword [ebp - 0xbe4]
push eax
mov ecx, dword [ebp - 0x1320]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xaa0]
call fcn.100030a0
mov byte [ebp - 0xb12], al
lea eax, [ebp - 0xa9f]
mov dword [ebp - 0x1324], eax
mov ecx, dword [ebp - 0xbe4]
push ecx
mov ecx, dword [ebp - 0x1324]
call fcn.100030c0
mov dl, byte [ebp - 0xb12]
mov byte [eax], dl
jmp 0x100200f8
lea eax, [ebp - 0xa9f]
mov dword [ebp - 0x1328], eax
push 0x13
mov ecx, dword [ebp - 0x1328]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa8b], 1
lea ecx, [ebp - 0xa9f]
call fcn.100030b0
mov dword [ebp - 0x109c], eax
mov byte [ebp - 0x4c0], 0x5a
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4bf], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4be], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4bd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4bc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4bb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4ba], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4b9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4b8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4b7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0x4b6], al
xor eax, eax
mov byte [ebp - 0x4b5], al
mov byte [ebp - 0x4b4], 0
movzx ecx, byte [ebp - 0x4b4]
test ecx, ecx
jne 0x100203b3
mov dword [ebp - 0xbe8], 0
jmp 0x1002032a
mov edx, dword [ebp - 0xbe8]
add edx, 1
mov dword [ebp - 0xbe8], edx
cmp dword [ebp - 0xbe8], 0xa
jae 0x10020390
lea eax, [ebp - 0x4bf]
mov dword [ebp - 0x132c], eax
mov ecx, dword [ebp - 0xbe8]
push ecx
mov ecx, dword [ebp - 0x132c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x4c0]
call fcn.100030a0
mov byte [ebp - 0xb13], al
lea ecx, [ebp - 0x4bf]
mov dword [ebp - 0x1330], ecx
mov edx, dword [ebp - 0xbe8]
push edx
mov ecx, dword [ebp - 0x1330]
call fcn.100030c0
mov cl, byte [ebp - 0xb13]
mov byte [eax], cl
jmp 0x1002031b
lea edx, [ebp - 0x4bf]
mov dword [ebp - 0x1334], edx
push 0xa
mov ecx, dword [ebp - 0x1334]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4b4], 1
lea ecx, [ebp - 0x4bf]
call fcn.100030b0
mov dword [ebp - 0x1098], eax
xor eax, eax
je 0x10020e8e
mov ecx, dword [ebp - 0x1098]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1348], eax
mov byte [ebp - 0x914], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x913], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x912], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x911], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x910], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90f], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90e], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90d], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90c], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90b], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x90a], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x909], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x908], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x907], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x906], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0x905], al
xor ecx, ecx
mov byte [ebp - 0x904], cl
mov byte [ebp - 0x903], 0
movzx edx, byte [ebp - 0x903]
test edx, edx
jne 0x10020696
mov dword [ebp - 0xbec], 0
jmp 0x1002060d
mov eax, dword [ebp - 0xbec]
add eax, 1
mov dword [ebp - 0xbec], eax
cmp dword [ebp - 0xbec], 0xf
jae 0x10020673
lea ecx, [ebp - 0x913]
mov dword [ebp - 0x1338], ecx
mov edx, dword [ebp - 0xbec]
push edx
mov ecx, dword [ebp - 0x1338]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x914]
call fcn.100030a0
mov byte [ebp - 0xb14], al
lea edx, [ebp - 0x913]
mov dword [ebp - 0x133c], edx
mov eax, dword [ebp - 0xbec]
push eax
mov ecx, dword [ebp - 0x133c]
call fcn.100030c0
mov cl, byte [ebp - 0xb14]
mov byte [eax], cl
jmp 0x100205fe
lea edx, [ebp - 0x913]
mov dword [ebp - 0x1340], edx
push 0xf
mov ecx, dword [ebp - 0x1340]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x903], 1
lea ecx, [ebp - 0x913]
call fcn.100030b0
mov dword [ebp - 0x1344], eax
mov eax, dword [ebp - 0x1344]
push eax
mov ecx, dword [ebp - 0x1348]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xbf0], eax
mov edx, dword [ebp - 0xbf0]
add edx, 4
mov dword [ebp - 0xbf0], edx
mov eax, dword [ebp - 0xbf0]
mov dword [ebp - 0xb90], eax
mov ecx, dword [ebp - 0xb90]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x134c], edx
mov eax, dword [ebp - 0xb90]
add eax, 5
mov dword [ebp - 0xb90], eax
mov ecx, dword [ebp - 0xb90]
add ecx, dword [ebp - 0x134c]
mov dword [ebp - 0xb90], ecx
mov edx, dword [ebp - 0xb90]
mov dword [ebp - 0xbf0], edx
mov dword [ebp - 0xe94], 0
mov dword [ebp - 0x1090], 0xffffffff
mov eax, dword [ebp - 0xbf0]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x714], edx
jmp 0x1002074e
mov eax, dword [ebp - 0x714]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x714], ecx
cmp dword [ebp - 0x714], 0
je 0x10020e58
push 0x40
push 0
lea edx, [ebp - 0x90]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6c4], 0
mov dword [ebp - 0x6c4], 0
jmp 0x10020793
mov eax, dword [ebp - 0x6c4]
add eax, 1
mov dword [ebp - 0x6c4], eax
mov ecx, dword [ebp - 0x714]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6c4]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x100207ec
mov edx, dword [ebp - 0x714]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6c4]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x100207ec
mov eax, dword [ebp - 0x714]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x6c4]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x90], cl
jmp 0x10020784
mov edx, dword [ebp - 0x6c4]
mov dword [ebp - 0x107c], edx
cmp dword [ebp - 0x107c], 0x40
jae 0x10020803
jmp 0x10020808
call fcn.100341c5
mov eax, dword [ebp - 0x107c]
mov byte [ebp + eax - 0x90], 0
mov ecx, dword [ebp - 0x109c]
mov dword [ebp - 0xdd4], ecx
lea edx, [ebp - 0x90]
mov dword [ebp - 0xdd8], edx
mov eax, dword [ebp - 0xdd8]
mov cl, byte [eax]
mov byte [ebp - 0xb15], cl
mov edx, dword [ebp - 0xdd4]
cmp cl, byte [edx]
jne 0x1002088c
cmp byte [ebp - 0xb15], 0
je 0x10020880
mov eax, dword [ebp - 0xdd8]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb16], cl
mov edx, dword [ebp - 0xdd4]
cmp cl, byte [edx + 1]
jne 0x1002088c
add dword [ebp - 0xdd8], 2
add dword [ebp - 0xdd4], 2
cmp byte [ebp - 0xb16], 0
jne 0x1002082e
mov dword [ebp - 0x1080], 0
jmp 0x10020897
sbb eax, eax
or eax, 1
mov dword [ebp - 0x1080], eax
mov ecx, dword [ebp - 0x1080]
mov dword [ebp - 0x1350], ecx
cmp dword [ebp - 0x1350], 0
jne 0x10020e53
mov edx, dword [ebp - 0x714]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x18ec]
call fcn.10007f70
mov dword [ebp - 4], 8
mov byte [ebp - 0x4b0], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4af], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4ae], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4ad], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4ac], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4ab], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4aa], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4a9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4a8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4a7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0x4a6], al
xor eax, eax
mov byte [ebp - 0x4a5], al
mov byte [ebp - 0x4a4], 0
movzx ecx, byte [ebp - 0x4a4]
test ecx, ecx
jne 0x10020ade
mov dword [ebp - 0xbf4], 0
jmp 0x10020a55
mov edx, dword [ebp - 0xbf4]
add edx, 1
mov dword [ebp - 0xbf4], edx
cmp dword [ebp - 0xbf4], 0xa
jae 0x10020abb
lea eax, [ebp - 0x4af]
mov dword [ebp - 0x1354], eax
mov ecx, dword [ebp - 0xbf4]
push ecx
mov ecx, dword [ebp - 0x1354]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x4b0]
call fcn.100030a0
mov byte [ebp - 0xb17], al
lea ecx, [ebp - 0x4af]
mov dword [ebp - 0x1358], ecx
mov edx, dword [ebp - 0xbf4]
push edx
mov ecx, dword [ebp - 0x1358]
call fcn.100030c0
mov cl, byte [ebp - 0xb17]
mov byte [eax], cl
jmp 0x10020a46
lea edx, [ebp - 0x4af]
mov dword [ebp - 0x135c], edx
push 0xa
mov ecx, dword [ebp - 0x135c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x4a4], 1
lea ecx, [ebp - 0x4af]
call fcn.100030b0
mov dword [ebp - 0x1360], eax
push 0
mov eax, dword [ebp - 0x1360]
push eax
lea ecx, [ebp - 0x18ec]
call fcn.1002b450
mov dword [ebp - 0xdcc], eax
cmp dword [ebp - 0xdcc], 0xffffffff
je 0x10020dc1
mov byte [ebp - 0x4a0], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x49a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x499], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x498], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x497], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0x496], al
xor eax, eax
mov byte [ebp - 0x495], al
mov byte [ebp - 0x494], 0
movzx ecx, byte [ebp - 0x494]
test ecx, ecx
jne 0x10020d28
mov dword [ebp - 0xbf8], 0
jmp 0x10020c9f
mov edx, dword [ebp - 0xbf8]
add edx, 1
mov dword [ebp - 0xbf8], edx
cmp dword [ebp - 0xbf8], 0xa
jae 0x10020d05
lea eax, [ebp - 0x49f]
mov dword [ebp - 0x1364], eax
mov ecx, dword [ebp - 0xbf8]
push ecx
mov ecx, dword [ebp - 0x1364]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x4a0]
call fcn.100030a0
mov byte [ebp - 0xb18], al
lea ecx, [ebp - 0x49f]
mov dword [ebp - 0x1368], ecx
mov edx, dword [ebp - 0xbf8]
push edx
mov ecx, dword [ebp - 0x1368]
call fcn.100030c0
mov cl, byte [ebp - 0xb18]
mov byte [eax], cl
jmp 0x10020c90
lea edx, [ebp - 0x49f]
mov dword [ebp - 0x136c], edx
push 0xa
mov ecx, dword [ebp - 0x136c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x494], 1
lea ecx, [ebp - 0x49f]
call fcn.100030b0
mov dword [ebp - 0x1370], eax
mov eax, dword [ebp - 0xdcc]
push eax
mov ecx, dword [ebp - 0x1370]
push ecx
lea ecx, [ebp - 0x18ec]
call fcn.1002b3f0
mov dword [ebp - 0xe90], eax
cmp dword [ebp - 0xe90], 0xffffffff
je 0x10020d75
mov edx, dword [ebp - 0xe90]
sub edx, dword [ebp - 0xdcc]
mov dword [ebp - 0x1084], edx
jmp 0x10020d81
mov eax, dword [ebp - 0xe90]
mov dword [ebp - 0x1084], eax
mov ecx, dword [ebp - 0x1084]
push ecx
mov edx, dword [ebp - 0xdcc]
push edx
lea eax, [ebp - 0x18d4]
push eax
lea ecx, [ebp - 0x18ec]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x10000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x18d4]
mov dword [ebp - 0x1088], edx
jmp 0x10020de9
lea ecx, [ebp - 0x18d4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x10000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x18d4]
mov dword [ebp - 0x1088], ecx
mov edx, dword [ebp - 0x1088]
mov dword [ebp - 0x1374], edx
mov ecx, dword [ebp - 0x1374]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x108c], eax
lea ecx, [ebp - 0x18d4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18ec]
call fcn.10007f20
mov eax, dword [ebp - 0x108c]
cmp eax, dword [ebp - 0x1090]
jle 0x10020e53
mov ecx, dword [ebp - 0x108c]
mov dword [ebp - 0x1090], ecx
mov edx, dword [ebp - 0x714]
mov dword [ebp - 0xe94], edx
jmp 0x1002073f
cmp dword [ebp - 0xe94], 0
jne 0x10020e6d
mov dword [ebp - 0x1094], 0
jmp 0x10020e7d
mov eax, dword [ebp - 0xe94]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x1094], eax
mov edx, dword [ebp - 0x1094]
mov dword [ebp - 0x10a0], edx
jmp 0x100211bf
mov byte [ebp - 0x928], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x927], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x926], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x925], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x924], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x923], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x922], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x921], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x920], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91f], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91e], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91d], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91c], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91b], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x91a], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0x919], al
xor edx, edx
mov byte [ebp - 0x918], dl
mov byte [ebp - 0x917], 0
movzx eax, byte [ebp - 0x917]
test eax, eax
jne 0x10021145
mov dword [ebp - 0xbfc], 0
jmp 0x100210bc
mov ecx, dword [ebp - 0xbfc]
add ecx, 1
mov dword [ebp - 0xbfc], ecx
cmp dword [ebp - 0xbfc], 0xf
jae 0x10021122
lea edx, [ebp - 0x927]
mov dword [ebp - 0x1378], edx
mov eax, dword [ebp - 0xbfc]
push eax
mov ecx, dword [ebp - 0x1378]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x928]
call fcn.100030a0
mov byte [ebp - 0xb19], al
lea eax, [ebp - 0x927]
mov dword [ebp - 0x137c], eax
mov ecx, dword [ebp - 0xbfc]
push ecx
mov ecx, dword [ebp - 0x137c]
call fcn.100030c0
mov dl, byte [ebp - 0xb19]
mov byte [eax], dl
jmp 0x100210ad
lea eax, [ebp - 0x927]
mov dword [ebp - 0x1380], eax
push 0xf
mov ecx, dword [ebp - 0x1380]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x917], 1
lea ecx, [ebp - 0x927]
call fcn.100030b0
mov dword [ebp - 0x1384], eax
mov ecx, dword [ebp - 0x1098]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1388], eax
mov edx, dword [ebp - 0x1384]
push edx
mov eax, dword [ebp - 0x1388]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x138c], eax
mov ecx, dword [ebp - 0x138c]
mov dword [ebp - 0x1390], ecx
mov edx, dword [ebp - 0x1390]
mov dword [ebp - 0x1394], edx
push 0
mov eax, dword [ebp - 0x109c]
push eax
call dword [ebp - 0x1394]
add esp, 8
mov dword [ebp - 0x1398], eax
mov ecx, dword [ebp - 0x1398]
mov dword [ebp - 0x10a0], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x10a0]
mov dword [edx + 0x2c], eax
mov byte [ebp - 0x770], 0x6d
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineVGui001]
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineVGui001]
push ecx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineVGui001]
push ecx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineVGui001]
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineVGui001]
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x76a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineVGui001]
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x769], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineVGui001]
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x768], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x767], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x766], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x765], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x764], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x763], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineVGui001]
push edx
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0x762], al
xor eax, eax
mov byte [ebp - 0x761], al
mov byte [ebp - 0x760], 0
movzx ecx, byte [ebp - 0x760]
test ecx, ecx
jne 0x10021461
mov dword [ebp - 0xc00], 0
jmp 0x100213d8
mov edx, dword [ebp - 0xc00]
add edx, 1
mov dword [ebp - 0xc00], edx
cmp dword [ebp - 0xc00], 0xe
jae 0x1002143e
lea eax, [ebp - 0x76f]
mov dword [ebp - 0x139c], eax
mov ecx, dword [ebp - 0xc00]
push ecx
mov ecx, dword [ebp - 0x139c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x770]
call fcn.100030a0
mov byte [ebp - 0xb1a], al
lea ecx, [ebp - 0x76f]
mov dword [ebp - 0x13a0], ecx
mov edx, dword [ebp - 0xc00]
push edx
mov ecx, dword [ebp - 0x13a0]
call fcn.100030c0
mov cl, byte [ebp - 0xb1a]
mov byte [eax], cl
jmp 0x100213c9
lea edx, [ebp - 0x76f]
mov dword [ebp - 0x13a4], edx
push 0xe
mov ecx, dword [ebp - 0x13a4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x760], 1
lea ecx, [ebp - 0x76f]
call fcn.100030b0
mov dword [ebp - 0x10c4], eax
mov byte [ebp - 0x490], 0x27
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48f], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48e], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48d], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48c], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48b], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x48a], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x489], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x488], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x487], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0x486], al
xor edx, edx
mov byte [ebp - 0x485], dl
mov byte [ebp - 0x484], 0
movzx eax, byte [ebp - 0x484]
test eax, eax
jne 0x10021684
mov dword [ebp - 0xc04], 0
jmp 0x100215fb
mov ecx, dword [ebp - 0xc04]
add ecx, 1
mov dword [ebp - 0xc04], ecx
cmp dword [ebp - 0xc04], 0xa
jae 0x10021661
lea edx, [ebp - 0x48f]
mov dword [ebp - 0x13a8], edx
mov eax, dword [ebp - 0xc04]
push eax
mov ecx, dword [ebp - 0x13a8]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x490]
call fcn.100030a0
mov byte [ebp - 0xb1b], al
lea eax, [ebp - 0x48f]
mov dword [ebp - 0x13ac], eax
mov ecx, dword [ebp - 0xc04]
push ecx
mov ecx, dword [ebp - 0x13ac]
call fcn.100030c0
mov dl, byte [ebp - 0xb1b]
mov byte [eax], dl
jmp 0x100215ec
lea eax, [ebp - 0x48f]
mov dword [ebp - 0x13b0], eax
push 0xa
mov ecx, dword [ebp - 0x13b0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x484], 1
lea ecx, [ebp - 0x48f]
call fcn.100030b0
mov dword [ebp - 0x10c0], eax
xor ecx, ecx
je 0x10022153
mov edx, dword [ebp - 0x10c0]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x13c4], eax
mov byte [ebp - 0x798], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x797], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x796], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x795], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x794], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x793], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x792], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x791], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x790], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78f], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78e], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78d], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78c], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78b], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x78a], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0x789], al
xor edx, edx
mov byte [ebp - 0x788], dl
mov byte [ebp - 0x787], 0
movzx eax, byte [ebp - 0x787]
test eax, eax
jne 0x10021967
mov dword [ebp - 0xc08], 0
jmp 0x100218de
mov ecx, dword [ebp - 0xc08]
add ecx, 1
mov dword [ebp - 0xc08], ecx
cmp dword [ebp - 0xc08], 0xf
jae 0x10021944
lea edx, [ebp - 0x797]
mov dword [ebp - 0x13b4], edx
mov eax, dword [ebp - 0xc08]
push eax
mov ecx, dword [ebp - 0x13b4]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x798]
call fcn.100030a0
mov byte [ebp - 0xb1c], al
lea eax, [ebp - 0x797]
mov dword [ebp - 0x13b8], eax
mov ecx, dword [ebp - 0xc08]
push ecx
mov ecx, dword [ebp - 0x13b8]
call fcn.100030c0
mov dl, byte [ebp - 0xb1c]
mov byte [eax], dl
jmp 0x100218cf
lea eax, [ebp - 0x797]
mov dword [ebp - 0x13bc], eax
push 0xf
mov ecx, dword [ebp - 0x13bc]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x787], 1
lea ecx, [ebp - 0x797]
call fcn.100030b0
mov dword [ebp - 0x13c0], eax
mov ecx, dword [ebp - 0x13c0]
push ecx
mov edx, dword [ebp - 0x13c4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc0c], eax
mov eax, dword [ebp - 0xc0c]
add eax, 4
mov dword [ebp - 0xc0c], eax
mov ecx, dword [ebp - 0xc0c]
mov dword [ebp - 0xb94], ecx
mov edx, dword [ebp - 0xb94]
mov eax, dword [edx + 1]
mov dword [ebp - 0x13c8], eax
mov ecx, dword [ebp - 0xb94]
add ecx, 5
mov dword [ebp - 0xb94], ecx
mov edx, dword [ebp - 0xb94]
add edx, dword [ebp - 0x13c8]
mov dword [ebp - 0xb94], edx
mov eax, dword [ebp - 0xb94]
mov dword [ebp - 0xc0c], eax
mov dword [ebp - 0xe24], 0
mov dword [ebp - 0x10b8], 0xffffffff
mov ecx, dword [ebp - 0xc0c]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x71c], eax
jmp 0x10021a1f
mov ecx, dword [ebp - 0x71c]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x71c], edx
cmp dword [ebp - 0x71c], 0
je 0x1002211d
push 0x40
push 0
lea eax, [ebp - 0x50]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x718], 0
mov dword [ebp - 0x718], 0
jmp 0x10021a61
mov ecx, dword [ebp - 0x718]
add ecx, 1
mov dword [ebp - 0x718], ecx
mov edx, dword [ebp - 0x71c]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x718]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x10021ab7
mov eax, dword [ebp - 0x71c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x718]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10021ab7
mov ecx, dword [ebp - 0x71c]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x718]
mov ecx, dword [ebp - 0x718]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x50], dl
jmp 0x10021a52
mov eax, dword [ebp - 0x718]
mov dword [ebp - 0x10a4], eax
cmp dword [ebp - 0x10a4], 0x40
jae 0x10021ace
jmp 0x10021ad3
call fcn.100341c5
mov ecx, dword [ebp - 0x10a4]
mov byte [ebp + ecx - 0x50], 0
mov edx, dword [ebp - 0x10c4]
mov dword [ebp - 0xde4], edx
lea eax, [ebp - 0x50]
mov dword [ebp - 0xda8], eax
mov ecx, dword [ebp - 0xda8]
mov dl, byte [ecx]
mov byte [ebp - 0xb1d], dl
mov eax, dword [ebp - 0xde4]
cmp dl, byte [eax]
jne 0x10021b51
cmp byte [ebp - 0xb1d], 0
je 0x10021b45
mov ecx, dword [ebp - 0xda8]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb4e], dl
mov eax, dword [ebp - 0xde4]
cmp dl, byte [eax + 1]
jne 0x10021b51
add dword [ebp - 0xda8], 2
add dword [ebp - 0xde4], 2
cmp byte [ebp - 0xb4e], 0
jne 0x10021af3
mov dword [ebp - 0x10a8], 0
jmp 0x10021b5c
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x10a8], ecx
mov edx, dword [ebp - 0x10a8]
mov dword [ebp - 0x13cc], edx
cmp dword [ebp - 0x13cc], 0
jne 0x10022118
mov eax, dword [ebp - 0x71c]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x191c]
call fcn.10007f70
mov dword [ebp - 4], 9
mov byte [ebp - 0x480], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x47a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x479], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x478], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x477], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0x476], al
xor ecx, ecx
mov byte [ebp - 0x475], cl
mov byte [ebp - 0x474], 0
movzx edx, byte [ebp - 0x474]
test edx, edx
jne 0x10021da3
mov dword [ebp - 0xc10], 0
jmp 0x10021d1a
mov eax, dword [ebp - 0xc10]
add eax, 1
mov dword [ebp - 0xc10], eax
cmp dword [ebp - 0xc10], 0xa
jae 0x10021d80
lea ecx, [ebp - 0x47f]
mov dword [ebp - 0x13d0], ecx
mov edx, dword [ebp - 0xc10]
push edx
mov ecx, dword [ebp - 0x13d0]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x480]
call fcn.100030a0
mov byte [ebp - 0xb1e], al
lea edx, [ebp - 0x47f]
mov dword [ebp - 0x13d4], edx
mov eax, dword [ebp - 0xc10]
push eax
mov ecx, dword [ebp - 0x13d4]
call fcn.100030c0
mov cl, byte [ebp - 0xb1e]
mov byte [eax], cl
jmp 0x10021d0b
lea edx, [ebp - 0x47f]
mov dword [ebp - 0x13d8], edx
push 0xa
mov ecx, dword [ebp - 0x13d8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x474], 1
lea ecx, [ebp - 0x47f]
call fcn.100030b0
mov dword [ebp - 0x13dc], eax
push 0
mov eax, dword [ebp - 0x13dc]
push eax
lea ecx, [ebp - 0x191c]
call fcn.1002b450
mov dword [ebp - 0xdd0], eax
cmp dword [ebp - 0xdd0], 0xffffffff
je 0x10022086
mov byte [ebp - 0x670], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x66a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x669], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x668], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x667], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0x666], al
xor eax, eax
mov byte [ebp - 0x665], al
mov byte [ebp - 0x664], 0
movzx ecx, byte [ebp - 0x664]
test ecx, ecx
jne 0x10021fed
mov dword [ebp - 0xc14], 0
jmp 0x10021f64
mov edx, dword [ebp - 0xc14]
add edx, 1
mov dword [ebp - 0xc14], edx
cmp dword [ebp - 0xc14], 0xa
jae 0x10021fca
lea eax, [ebp - 0x66f]
mov dword [ebp - 0x13e0], eax
mov ecx, dword [ebp - 0xc14]
push ecx
mov ecx, dword [ebp - 0x13e0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x670]
call fcn.100030a0
mov byte [ebp - 0xb1f], al
lea ecx, [ebp - 0x66f]
mov dword [ebp - 0x13e4], ecx
mov edx, dword [ebp - 0xc14]
push edx
mov ecx, dword [ebp - 0x13e4]
call fcn.100030c0
mov cl, byte [ebp - 0xb1f]
mov byte [eax], cl
jmp 0x10021f55
lea edx, [ebp - 0x66f]
mov dword [ebp - 0x13e8], edx
push 0xa
mov ecx, dword [ebp - 0x13e8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x664], 1
lea ecx, [ebp - 0x66f]
call fcn.100030b0
mov dword [ebp - 0x13ec], eax
mov eax, dword [ebp - 0xdd0]
push eax
mov ecx, dword [ebp - 0x13ec]
push ecx
lea ecx, [ebp - 0x191c]
call fcn.1002b3f0
mov dword [ebp - 0xe98], eax
cmp dword [ebp - 0xe98], 0xffffffff
je 0x1002203a
mov edx, dword [ebp - 0xe98]
sub edx, dword [ebp - 0xdd0]
mov dword [ebp - 0x10ac], edx
jmp 0x10022046
mov eax, dword [ebp - 0xe98]
mov dword [ebp - 0x10ac], eax
mov ecx, dword [ebp - 0x10ac]
push ecx
mov edx, dword [ebp - 0xdd0]
push edx
lea eax, [ebp - 0x1904]
push eax
lea ecx, [ebp - 0x191c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x40000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1904]
mov dword [ebp - 0x10b0], edx
jmp 0x100220ae
lea ecx, [ebp - 0x1904]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x40000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1904]
mov dword [ebp - 0x10b0], ecx
mov edx, dword [ebp - 0x10b0]
mov dword [ebp - 0x13f0], edx
mov ecx, dword [ebp - 0x13f0]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x10b4], eax
lea ecx, [ebp - 0x1904]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x191c]
call fcn.10007f20
mov eax, dword [ebp - 0x10b4]
cmp eax, dword [ebp - 0x10b8]
jle 0x10022118
mov ecx, dword [ebp - 0x10b4]
mov dword [ebp - 0x10b8], ecx
mov edx, dword [ebp - 0x71c]
mov dword [ebp - 0xe24], edx
jmp 0x10021a10
cmp dword [ebp - 0xe24], 0
jne 0x10022132
mov dword [ebp - 0x10bc], 0
jmp 0x10022142
mov eax, dword [ebp - 0xe24]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x10bc], eax
mov edx, dword [ebp - 0x10bc]
mov dword [ebp - 0x10c8], edx
jmp 0x10022484
mov byte [ebp - 0x93c], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x93b], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x93a], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x939], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x938], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x937], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x936], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x935], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x934], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x933], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x932], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x931], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x930], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x92f], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x92e], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0x92d], al
xor edx, edx
mov byte [ebp - 0x92c], dl
mov byte [ebp - 0x92b], 0
movzx eax, byte [ebp - 0x92b]
test eax, eax
jne 0x1002240a
mov dword [ebp - 0xc18], 0
jmp 0x10022381
mov ecx, dword [ebp - 0xc18]
add ecx, 1
mov dword [ebp - 0xc18], ecx
cmp dword [ebp - 0xc18], 0xf
jae 0x100223e7
lea edx, [ebp - 0x93b]
mov dword [ebp - 0x13f4], edx
mov eax, dword [ebp - 0xc18]
push eax
mov ecx, dword [ebp - 0x13f4]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x93c]
call fcn.100030a0
mov byte [ebp - 0xb20], al
lea eax, [ebp - 0x93b]
mov dword [ebp - 0x13f8], eax
mov ecx, dword [ebp - 0xc18]
push ecx
mov ecx, dword [ebp - 0x13f8]
call fcn.100030c0
mov dl, byte [ebp - 0xb20]
mov byte [eax], dl
jmp 0x10022372
lea eax, [ebp - 0x93b]
mov dword [ebp - 0x13fc], eax
push 0xf
mov ecx, dword [ebp - 0x13fc]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x92b], 1
lea ecx, [ebp - 0x93b]
call fcn.100030b0
mov dword [ebp - 0x1400], eax
mov ecx, dword [ebp - 0x10c0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1404], eax
mov edx, dword [ebp - 0x1400]
push edx
mov eax, dword [ebp - 0x1404]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1408], eax
mov ecx, dword [ebp - 0x1408]
mov dword [ebp - 0x140c], ecx
mov edx, dword [ebp - 0x140c]
mov dword [ebp - 0x1410], edx
push 0
mov eax, dword [ebp - 0x10c4]
push eax
call dword [ebp - 0x1410]
add esp, 8
mov dword [ebp - 0x1414], eax
mov ecx, dword [ebp - 0x1414]
mov dword [ebp - 0x10c8], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x10c8]
mov dword [edx + 0xc], eax
mov byte [ebp - 0xa58], 0x13
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VMaterialSystem080]
push eax
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa57], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa56], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VMaterialSystem080]
push ecx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa55], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VMaterialSystem080]
push ecx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa54], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VMaterialSystem080]
push eax
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa53], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VMaterialSystem080]
push eax
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa52], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VMaterialSystem080]
push eax
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa51], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VMaterialSystem080]
push eax
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa50], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4f], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4e], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4d], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4c], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4b], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa4a], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa49], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VMaterialSystem080]
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa48], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VMaterialSystem080]
push ecx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa47], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.VMaterialSystem080]
push ecx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xa46], al
xor edx, edx
mov byte [ebp - 0xa45], dl
mov byte [ebp - 0xa44], 0
movzx eax, byte [ebp - 0xa44]
test eax, eax
jne 0x100227aa
mov dword [ebp - 0xc1c], 0
jmp 0x10022721
mov ecx, dword [ebp - 0xc1c]
add ecx, 1
mov dword [ebp - 0xc1c], ecx
cmp dword [ebp - 0xc1c], 0x12
jae 0x10022787
lea edx, [ebp - 0xa57]
mov dword [ebp - 0x1418], edx
mov eax, dword [ebp - 0xc1c]
push eax
mov ecx, dword [ebp - 0x1418]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa58]
call fcn.100030a0
mov byte [ebp - 0xb21], al
lea eax, [ebp - 0xa57]
mov dword [ebp - 0x141c], eax
mov ecx, dword [ebp - 0xc1c]
push ecx
mov ecx, dword [ebp - 0x141c]
call fcn.100030c0
mov dl, byte [ebp - 0xb21]
mov byte [eax], dl
jmp 0x10022712
lea eax, [ebp - 0xa57]
mov dword [ebp - 0x1420], eax
push 0x12
mov ecx, dword [ebp - 0x1420]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa44], 1
lea ecx, [ebp - 0xa57]
call fcn.100030b0
mov dword [ebp - 0x10ec], eax
mov byte [ebp - 0xa70], 0x46
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.materialsystem.dll]
push eax
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.materialsystem.dll]
push ecx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.materialsystem.dll]
push ecx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.materialsystem.dll]
push eax
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.materialsystem.dll]
push eax
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa6a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.materialsystem.dll]
push eax
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa69], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.materialsystem.dll]
push eax
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa68], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa67], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa66], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa65], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa64], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa63], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa62], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa61], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.materialsystem.dll]
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa60], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.materialsystem.dll]
push ecx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa5f], al
mov edx, 1
imul eax, edx, 0x11
movzx ecx, byte [eax + str.materialsystem.dll]
push ecx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xa5e], al
xor edx, edx
mov byte [ebp - 0xa5d], dl
mov byte [ebp - 0xa5c], 0
movzx eax, byte [ebp - 0xa5c]
test eax, eax
jne 0x10022ad5
mov dword [ebp - 0xc20], 0
jmp 0x10022a4c
mov ecx, dword [ebp - 0xc20]
add ecx, 1
mov dword [ebp - 0xc20], ecx
cmp dword [ebp - 0xc20], 0x12
jae 0x10022ab2
lea edx, [ebp - 0xa6f]
mov dword [ebp - 0x1424], edx
mov eax, dword [ebp - 0xc20]
push eax
mov ecx, dword [ebp - 0x1424]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa70]
call fcn.100030a0
mov byte [ebp - 0xb22], al
lea eax, [ebp - 0xa6f]
mov dword [ebp - 0x1428], eax
mov ecx, dword [ebp - 0xc20]
push ecx
mov ecx, dword [ebp - 0x1428]
call fcn.100030c0
mov dl, byte [ebp - 0xb22]
mov byte [eax], dl
jmp 0x10022a3d
lea eax, [ebp - 0xa6f]
mov dword [ebp - 0x142c], eax
push 0x12
mov ecx, dword [ebp - 0x142c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa5c], 1
lea ecx, [ebp - 0xa6f]
call fcn.100030b0
mov dword [ebp - 0x10e8], eax
xor ecx, ecx
je 0x100235b0
mov edx, dword [ebp - 0x10e8]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1440], eax
mov byte [ebp - 0x950], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94f], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94e], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94d], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94c], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94b], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x94a], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x949], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x948], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x947], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x946], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x945], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x944], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x943], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x942], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0x941], al
xor edx, edx
mov byte [ebp - 0x940], dl
mov byte [ebp - 0x93f], 0
movzx eax, byte [ebp - 0x93f]
test eax, eax
jne 0x10022db8
mov dword [ebp - 0xc24], 0
jmp 0x10022d2f
mov ecx, dword [ebp - 0xc24]
add ecx, 1
mov dword [ebp - 0xc24], ecx
cmp dword [ebp - 0xc24], 0xf
jae 0x10022d95
lea edx, [ebp - 0x94f]
mov dword [ebp - 0x1430], edx
mov eax, dword [ebp - 0xc24]
push eax
mov ecx, dword [ebp - 0x1430]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x950]
call fcn.100030a0
mov byte [ebp - 0xb23], al
lea eax, [ebp - 0x94f]
mov dword [ebp - 0x1434], eax
mov ecx, dword [ebp - 0xc24]
push ecx
mov ecx, dword [ebp - 0x1434]
call fcn.100030c0
mov dl, byte [ebp - 0xb23]
mov byte [eax], dl
jmp 0x10022d20
lea eax, [ebp - 0x94f]
mov dword [ebp - 0x1438], eax
push 0xf
mov ecx, dword [ebp - 0x1438]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x93f], 1
lea ecx, [ebp - 0x94f]
call fcn.100030b0
mov dword [ebp - 0x143c], eax
mov ecx, dword [ebp - 0x143c]
push ecx
mov edx, dword [ebp - 0x1440]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc28], eax
mov eax, dword [ebp - 0xc28]
add eax, 4
mov dword [ebp - 0xc28], eax
mov ecx, dword [ebp - 0xc28]
mov dword [ebp - 0xb98], ecx
mov edx, dword [ebp - 0xb98]
mov eax, dword [edx + 1]
mov dword [ebp - 0x1444], eax
mov ecx, dword [ebp - 0xb98]
add ecx, 5
mov dword [ebp - 0xb98], ecx
mov edx, dword [ebp - 0xb98]
add edx, dword [ebp - 0x1444]
mov dword [ebp - 0xb98], edx
mov eax, dword [ebp - 0xb98]
mov dword [ebp - 0xc28], eax
mov dword [ebp - 0xe2c], 0
mov dword [ebp - 0x10e0], 0xffffffff
mov ecx, dword [ebp - 0xc28]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x724], eax
jmp 0x10022e70
mov ecx, dword [ebp - 0x724]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x724], edx
cmp dword [ebp - 0x724], 0
je 0x1002357a
push 0x40
push 0
lea eax, [ebp - 0x2d0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x720], 0
mov dword [ebp - 0x720], 0
jmp 0x10022eb5
mov ecx, dword [ebp - 0x720]
add ecx, 1
mov dword [ebp - 0x720], ecx
mov edx, dword [ebp - 0x724]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x720]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x10022f0e
mov eax, dword [ebp - 0x724]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x720]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10022f0e
mov ecx, dword [ebp - 0x724]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x720]
mov ecx, dword [ebp - 0x720]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x2d0], dl
jmp 0x10022ea6
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x10cc], eax
cmp dword [ebp - 0x10cc], 0x40
jae 0x10022f25
jmp 0x10022f2a
call fcn.100341c5
mov ecx, dword [ebp - 0x10cc]
mov byte [ebp + ecx - 0x2d0], 0
mov edx, dword [ebp - 0x10ec]
mov dword [ebp - 0xd90], edx
lea eax, [ebp - 0x2d0]
mov dword [ebp - 0xd80], eax
mov ecx, dword [ebp - 0xd80]
mov dl, byte [ecx]
mov byte [ebp - 0xb24], dl
mov eax, dword [ebp - 0xd90]
cmp dl, byte [eax]
jne 0x10022fae
cmp byte [ebp - 0xb24], 0
je 0x10022fa2
mov ecx, dword [ebp - 0xd80]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb25], dl
mov eax, dword [ebp - 0xd90]
cmp dl, byte [eax + 1]
jne 0x10022fae
add dword [ebp - 0xd80], 2
add dword [ebp - 0xd90], 2
cmp byte [ebp - 0xb25], 0
jne 0x10022f50
mov dword [ebp - 0x10d0], 0
jmp 0x10022fb9
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x10d0], ecx
mov edx, dword [ebp - 0x10d0]
mov dword [ebp - 0x1448], edx
cmp dword [ebp - 0x1448], 0
jne 0x10023575
mov eax, dword [ebp - 0x724]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x194c]
call fcn.10007f70
mov dword [ebp - 4], 0xa
mov byte [ebp - 0x470], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x46a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x469], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x468], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x467], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0x466], al
xor ecx, ecx
mov byte [ebp - 0x465], cl
mov byte [ebp - 0x464], 0
movzx edx, byte [ebp - 0x464]
test edx, edx
jne 0x10023200
mov dword [ebp - 0xc2c], 0
jmp 0x10023177
mov eax, dword [ebp - 0xc2c]
add eax, 1
mov dword [ebp - 0xc2c], eax
cmp dword [ebp - 0xc2c], 0xa
jae 0x100231dd
lea ecx, [ebp - 0x46f]
mov dword [ebp - 0x144c], ecx
mov edx, dword [ebp - 0xc2c]
push edx
mov ecx, dword [ebp - 0x144c]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x470]
call fcn.100030a0
mov byte [ebp - 0xb26], al
lea edx, [ebp - 0x46f]
mov dword [ebp - 0x1450], edx
mov eax, dword [ebp - 0xc2c]
push eax
mov ecx, dword [ebp - 0x1450]
call fcn.100030c0
mov cl, byte [ebp - 0xb26]
mov byte [eax], cl
jmp 0x10023168
lea edx, [ebp - 0x46f]
mov dword [ebp - 0x1454], edx
push 0xa
mov ecx, dword [ebp - 0x1454]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x464], 1
lea ecx, [ebp - 0x46f]
call fcn.100030b0
mov dword [ebp - 0x1458], eax
push 0
mov eax, dword [ebp - 0x1458]
push eax
lea ecx, [ebp - 0x194c]
call fcn.1002b450
mov dword [ebp - 0xd94], eax
cmp dword [ebp - 0xd94], 0xffffffff
je 0x100234e3
mov byte [ebp - 0x460], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x45a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x459], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x458], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x457], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0x456], al
xor eax, eax
mov byte [ebp - 0x455], al
mov byte [ebp - 0x454], 0
movzx ecx, byte [ebp - 0x454]
test ecx, ecx
jne 0x1002344a
mov dword [ebp - 0xcc8], 0
jmp 0x100233c1
mov edx, dword [ebp - 0xcc8]
add edx, 1
mov dword [ebp - 0xcc8], edx
cmp dword [ebp - 0xcc8], 0xa
jae 0x10023427
lea eax, [ebp - 0x45f]
mov dword [ebp - 0x145c], eax
mov ecx, dword [ebp - 0xcc8]
push ecx
mov ecx, dword [ebp - 0x145c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x460]
call fcn.100030a0
mov byte [ebp - 0xb27], al
lea ecx, [ebp - 0x45f]
mov dword [ebp - 0x1460], ecx
mov edx, dword [ebp - 0xcc8]
push edx
mov ecx, dword [ebp - 0x1460]
call fcn.100030c0
mov cl, byte [ebp - 0xb27]
mov byte [eax], cl
jmp 0x100233b2
lea edx, [ebp - 0x45f]
mov dword [ebp - 0x1464], edx
push 0xa
mov ecx, dword [ebp - 0x1464]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x454], 1
lea ecx, [ebp - 0x45f]
call fcn.100030b0
mov dword [ebp - 0x1468], eax
mov eax, dword [ebp - 0xd94]
push eax
mov ecx, dword [ebp - 0x1468]
push ecx
lea ecx, [ebp - 0x194c]
call fcn.1002b3f0
mov dword [ebp - 0xe28], eax
cmp dword [ebp - 0xe28], 0xffffffff
je 0x10023497
mov edx, dword [ebp - 0xe28]
sub edx, dword [ebp - 0xd94]
mov dword [ebp - 0x10d4], edx
jmp 0x100234a3
mov eax, dword [ebp - 0xe28]
mov dword [ebp - 0x10d4], eax
mov ecx, dword [ebp - 0x10d4]
push ecx
mov edx, dword [ebp - 0xd94]
push edx
lea eax, [ebp - 0x1934]
push eax
lea ecx, [ebp - 0x194c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x100000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1934]
mov dword [ebp - 0x10d8], edx
jmp 0x1002350b
lea ecx, [ebp - 0x1934]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x100000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1934]
mov dword [ebp - 0x10d8], ecx
mov edx, dword [ebp - 0x10d8]
mov dword [ebp - 0x146c], edx
mov ecx, dword [ebp - 0x146c]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0x10dc], eax
lea ecx, [ebp - 0x1934]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x194c]
call fcn.10007f20
mov eax, dword [ebp - 0x10dc]
cmp eax, dword [ebp - 0x10e0]
jle 0x10023575
mov ecx, dword [ebp - 0x10dc]
mov dword [ebp - 0x10e0], ecx
mov edx, dword [ebp - 0x724]
mov dword [ebp - 0xe2c], edx
jmp 0x10022e61
cmp dword [ebp - 0xe2c], 0
jne 0x1002358f
mov dword [ebp - 0x10f0], 0
jmp 0x1002359f
mov eax, dword [ebp - 0xe2c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x10f0], eax
mov edx, dword [ebp - 0x10f0]
mov dword [ebp - 0xe9c], edx
jmp 0x100238e1
mov byte [ebp - 0x964], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x963], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x962], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x961], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x960], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95f], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95e], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95d], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95c], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95b], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x95a], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x959], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x958], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x957], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x956], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0x955], al
xor edx, edx
mov byte [ebp - 0x954], dl
mov byte [ebp - 0x953], 0
movzx eax, byte [ebp - 0x953]
test eax, eax
jne 0x10023867
mov dword [ebp - 0xd6c], 0
jmp 0x100237de
mov ecx, dword [ebp - 0xd6c]
add ecx, 1
mov dword [ebp - 0xd6c], ecx
cmp dword [ebp - 0xd6c], 0xf
jae 0x10023844
lea edx, [ebp - 0x963]
mov dword [ebp - 0x1470], edx
mov eax, dword [ebp - 0xd6c]
push eax
mov ecx, dword [ebp - 0x1470]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x964]
call fcn.100030a0
mov byte [ebp - 0xb28], al
lea eax, [ebp - 0x963]
mov dword [ebp - 0x1474], eax
mov ecx, dword [ebp - 0xd6c]
push ecx
mov ecx, dword [ebp - 0x1474]
call fcn.100030c0
mov dl, byte [ebp - 0xb28]
mov byte [eax], dl
jmp 0x100237cf
lea eax, [ebp - 0x963]
mov dword [ebp - 0x1478], eax
push 0xf
mov ecx, dword [ebp - 0x1478]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x953], 1
lea ecx, [ebp - 0x963]
call fcn.100030b0
mov dword [ebp - 0x147c], eax
mov ecx, dword [ebp - 0x10e8]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1480], eax
mov edx, dword [ebp - 0x147c]
push edx
mov eax, dword [ebp - 0x1480]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1484], eax
mov ecx, dword [ebp - 0x1484]
mov dword [ebp - 0x1488], ecx
mov edx, dword [ebp - 0x1488]
mov dword [ebp - 0x148c], edx
push 0
mov eax, dword [ebp - 0x10ec]
push eax
call dword [ebp - 0x148c]
add esp, 8
mov dword [ebp - 0x1490], eax
mov ecx, dword [ebp - 0x1490]
mov dword [ebp - 0xe9c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xe9c]
mov dword [edx + 0x28], eax
mov byte [ebp - 0x748], 0x12
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VGUI_Panel009]
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x747], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x746], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VGUI_Panel009]
push ecx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x745], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VGUI_Panel009]
push ecx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x744], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VGUI_Panel009]
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x743], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VGUI_Panel009]
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x742], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VGUI_Panel009]
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x741], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VGUI_Panel009]
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x740], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x73f], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x73e], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x73d], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x73c], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VGUI_Panel009]
push edx
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0x73b], al
xor eax, eax
mov byte [ebp - 0x73a], al
mov byte [ebp - 0x739], 0
movzx ecx, byte [ebp - 0x739]
test ecx, ecx
jne 0x10023b62
mov dword [ebp - 0xd68], 0
jmp 0x10023ad9
mov edx, dword [ebp - 0xd68]
add edx, 1
mov dword [ebp - 0xd68], edx
cmp dword [ebp - 0xd68], 0xd
jae 0x10023b3f
lea eax, [ebp - 0x747]
mov dword [ebp - 0x1494], eax
mov ecx, dword [ebp - 0xd68]
push ecx
mov ecx, dword [ebp - 0x1494]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x748]
call fcn.100030a0
mov byte [ebp - 0xb29], al
lea ecx, [ebp - 0x747]
mov dword [ebp - 0x1498], ecx
mov edx, dword [ebp - 0xd68]
push edx
mov ecx, dword [ebp - 0x1498]
call fcn.100030c0
mov cl, byte [ebp - 0xb29]
mov byte [eax], cl
jmp 0x10023aca
lea edx, [ebp - 0x747]
mov dword [ebp - 0x16d0], edx
push 0xd
mov ecx, dword [ebp - 0x16d0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x739], 1
lea ecx, [ebp - 0x747]
call fcn.100030b0
mov dword [ebp - 0xec0], eax
mov byte [ebp - 0x3e0], 0x4e
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.vgui2.dll]
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3df], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.vgui2.dll]
push ecx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3de], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.vgui2.dll]
push eax
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3dd], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.vgui2.dll]
push eax
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3dc], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.vgui2.dll]
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3db], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.vgui2.dll]
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3da], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.vgui2.dll]
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3d9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.vgui2.dll]
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3d8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.vgui2.dll]
push ecx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0x3d7], al
xor edx, edx
mov byte [ebp - 0x3d6], dl
mov byte [ebp - 0x3d5], 0
movzx eax, byte [ebp - 0x3d5]
test eax, eax
jne 0x10023d64
mov dword [ebp - 0xd64], 0
jmp 0x10023cdb
mov ecx, dword [ebp - 0xd64]
add ecx, 1
mov dword [ebp - 0xd64], ecx
cmp dword [ebp - 0xd64], 9
jae 0x10023d41
lea edx, [ebp - 0x3df]
mov dword [ebp - 0x14a0], edx
mov eax, dword [ebp - 0xd64]
push eax
mov ecx, dword [ebp - 0x14a0]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x3e0]
call fcn.100030a0
mov byte [ebp - 0xb2a], al
lea eax, [ebp - 0x3df]
mov dword [ebp - 0x14a4], eax
mov ecx, dword [ebp - 0xd64]
push ecx
mov ecx, dword [ebp - 0x14a4]
call fcn.100030c0
mov dl, byte [ebp - 0xb2a]
mov byte [eax], dl
jmp 0x10023ccc
lea eax, [ebp - 0x3df]
mov dword [ebp - 0x14a8], eax
push 9
mov ecx, dword [ebp - 0x14a8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x3d5], 1
lea ecx, [ebp - 0x3df]
call fcn.100030b0
mov dword [ebp - 0xebc], eax
xor ecx, ecx
je 0x1002483f
mov edx, dword [ebp - 0xebc]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x14bc], eax
mov byte [ebp - 0x978], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x977], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x976], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x975], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x974], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x973], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x972], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x971], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x970], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96f], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96e], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96d], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96c], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96b], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x96a], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0x969], al
xor edx, edx
mov byte [ebp - 0x968], dl
mov byte [ebp - 0x967], 0
movzx eax, byte [ebp - 0x967]
test eax, eax
jne 0x10024047
mov dword [ebp - 0xd60], 0
jmp 0x10023fbe
mov ecx, dword [ebp - 0xd60]
add ecx, 1
mov dword [ebp - 0xd60], ecx
cmp dword [ebp - 0xd60], 0xf
jae 0x10024024
lea edx, [ebp - 0x977]
mov dword [ebp - 0x14ac], edx
mov eax, dword [ebp - 0xd60]
push eax
mov ecx, dword [ebp - 0x14ac]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x978]
call fcn.100030a0
mov byte [ebp - 0xb2b], al
lea eax, [ebp - 0x977]
mov dword [ebp - 0x14b0], eax
mov ecx, dword [ebp - 0xd60]
push ecx
mov ecx, dword [ebp - 0x14b0]
call fcn.100030c0
mov dl, byte [ebp - 0xb2b]
mov byte [eax], dl
jmp 0x10023faf
lea eax, [ebp - 0x977]
mov dword [ebp - 0x14b4], eax
push 0xf
mov ecx, dword [ebp - 0x14b4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x967], 1
lea ecx, [ebp - 0x977]
call fcn.100030b0
mov dword [ebp - 0x14b8], eax
mov ecx, dword [ebp - 0x14b8]
push ecx
mov edx, dword [ebp - 0x14bc]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd5c], eax
mov eax, dword [ebp - 0xd5c]
add eax, 4
mov dword [ebp - 0xd5c], eax
mov ecx, dword [ebp - 0xd5c]
mov dword [ebp - 0xb9c], ecx
mov edx, dword [ebp - 0xb9c]
mov eax, dword [edx + 1]
mov dword [ebp - 0x14c0], eax
mov ecx, dword [ebp - 0xb9c]
add ecx, 5
mov dword [ebp - 0xb9c], ecx
mov edx, dword [ebp - 0xb9c]
add edx, dword [ebp - 0x14c0]
mov dword [ebp - 0xb9c], edx
mov eax, dword [ebp - 0xb9c]
mov dword [ebp - 0xd5c], eax
mov dword [ebp - 0xe34], 0
mov dword [ebp - 0xeb4], 0xffffffff
mov ecx, dword [ebp - 0xd5c]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x72c], eax
jmp 0x100240ff
mov ecx, dword [ebp - 0x72c]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x72c], edx
cmp dword [ebp - 0x72c], 0
je 0x10024809
push 0x40
push 0
lea eax, [ebp - 0x3d0]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x728], 0
mov dword [ebp - 0x728], 0
jmp 0x10024144
mov ecx, dword [ebp - 0x728]
add ecx, 1
mov dword [ebp - 0x728], ecx
mov edx, dword [ebp - 0x72c]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x728]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x1002419d
mov eax, dword [ebp - 0x72c]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x728]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1002419d
mov ecx, dword [ebp - 0x72c]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x728]
mov ecx, dword [ebp - 0x728]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x3d0], dl
jmp 0x10024135
mov eax, dword [ebp - 0x728]
mov dword [ebp - 0xea0], eax
cmp dword [ebp - 0xea0], 0x40
jae 0x100241b4
jmp 0x100241b9
call fcn.100341c5
mov ecx, dword [ebp - 0xea0]
mov byte [ebp + ecx - 0x3d0], 0
mov edx, dword [ebp - 0xec0]
mov dword [ebp - 0xd9c], edx
lea eax, [ebp - 0x3d0]
mov dword [ebp - 0xd98], eax
mov ecx, dword [ebp - 0xd98]
mov dl, byte [ecx]
mov byte [ebp - 0xb2c], dl
mov eax, dword [ebp - 0xd9c]
cmp dl, byte [eax]
jne 0x1002423d
cmp byte [ebp - 0xb2c], 0
je 0x10024231
mov ecx, dword [ebp - 0xd98]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb2d], dl
mov eax, dword [ebp - 0xd9c]
cmp dl, byte [eax + 1]
jne 0x1002423d
add dword [ebp - 0xd98], 2
add dword [ebp - 0xd9c], 2
cmp byte [ebp - 0xb2d], 0
jne 0x100241df
mov dword [ebp - 0xea4], 0
jmp 0x10024248
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0xea4], ecx
mov edx, dword [ebp - 0xea4]
mov dword [ebp - 0x14c4], edx
cmp dword [ebp - 0x14c4], 0
jne 0x10024804
mov eax, dword [ebp - 0x72c]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x197c]
call fcn.10007f70
mov dword [ebp - 4], 0xb
mov byte [ebp - 0x450], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x44a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x449], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x448], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x447], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0x446], al
xor ecx, ecx
mov byte [ebp - 0x445], cl
mov byte [ebp - 0x444], 0
movzx edx, byte [ebp - 0x444]
test edx, edx
jne 0x1002448f
mov dword [ebp - 0xd58], 0
jmp 0x10024406
mov eax, dword [ebp - 0xd58]
add eax, 1
mov dword [ebp - 0xd58], eax
cmp dword [ebp - 0xd58], 0xa
jae 0x1002446c
lea ecx, [ebp - 0x44f]
mov dword [ebp - 0x14c8], ecx
mov edx, dword [ebp - 0xd58]
push edx
mov ecx, dword [ebp - 0x14c8]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x450]
call fcn.100030a0
mov byte [ebp - 0xb2e], al
lea edx, [ebp - 0x44f]
mov dword [ebp - 0x14cc], edx
mov eax, dword [ebp - 0xd58]
push eax
mov ecx, dword [ebp - 0x14cc]
call fcn.100030c0
mov cl, byte [ebp - 0xb2e]
mov byte [eax], cl
jmp 0x100243f7
lea edx, [ebp - 0x44f]
mov dword [ebp - 0x14d0], edx
push 0xa
mov ecx, dword [ebp - 0x14d0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x444], 1
lea ecx, [ebp - 0x44f]
call fcn.100030b0
mov dword [ebp - 0x14d4], eax
push 0
mov eax, dword [ebp - 0x14d4]
push eax
lea ecx, [ebp - 0x197c]
call fcn.1002b450
mov dword [ebp - 0xda0], eax
cmp dword [ebp - 0xda0], 0xffffffff
je 0x10024772
mov byte [ebp - 0x440], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x43a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x439], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x438], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x437], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0x436], al
xor eax, eax
mov byte [ebp - 0x435], al
mov byte [ebp - 0x434], 0
movzx ecx, byte [ebp - 0x434]
test ecx, ecx
jne 0x100246d9
mov dword [ebp - 0xd54], 0
jmp 0x10024650
mov edx, dword [ebp - 0xd54]
add edx, 1
mov dword [ebp - 0xd54], edx
cmp dword [ebp - 0xd54], 0xa
jae 0x100246b6
lea eax, [ebp - 0x43f]
mov dword [ebp - 0x14d8], eax
mov ecx, dword [ebp - 0xd54]
push ecx
mov ecx, dword [ebp - 0x14d8]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x440]
call fcn.100030a0
mov byte [ebp - 0xb66], al
lea ecx, [ebp - 0x43f]
mov dword [ebp - 0x14dc], ecx
mov edx, dword [ebp - 0xd54]
push edx
mov ecx, dword [ebp - 0x14dc]
call fcn.100030c0
mov cl, byte [ebp - 0xb66]
mov byte [eax], cl
jmp 0x10024641
lea edx, [ebp - 0x43f]
mov dword [ebp - 0x14e0], edx
push 0xa
mov ecx, dword [ebp - 0x14e0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x434], 1
lea ecx, [ebp - 0x43f]
call fcn.100030b0
mov dword [ebp - 0x14e4], eax
mov eax, dword [ebp - 0xda0]
push eax
mov ecx, dword [ebp - 0x14e4]
push ecx
lea ecx, [ebp - 0x197c]
call fcn.1002b3f0
mov dword [ebp - 0xe30], eax
cmp dword [ebp - 0xe30], 0xffffffff
je 0x10024726
mov edx, dword [ebp - 0xe30]
sub edx, dword [ebp - 0xda0]
mov dword [ebp - 0xea8], edx
jmp 0x10024732
mov eax, dword [ebp - 0xe30]
mov dword [ebp - 0xea8], eax
mov ecx, dword [ebp - 0xea8]
push ecx
mov edx, dword [ebp - 0xda0]
push edx
lea eax, [ebp - 0x1964]
push eax
lea ecx, [ebp - 0x197c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x400000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1964]
mov dword [ebp - 0xeac], edx
jmp 0x1002479a
lea ecx, [ebp - 0x1964]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x400000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1964]
mov dword [ebp - 0xeac], ecx
mov edx, dword [ebp - 0xeac]
mov dword [ebp - 0x14e8], edx
mov ecx, dword [ebp - 0x14e8]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xeb0], eax
lea ecx, [ebp - 0x1964]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x197c]
call fcn.10007f20
mov eax, dword [ebp - 0xeb0]
cmp eax, dword [ebp - 0xeb4]
jle 0x10024804
mov ecx, dword [ebp - 0xeb0]
mov dword [ebp - 0xeb4], ecx
mov edx, dword [ebp - 0x72c]
mov dword [ebp - 0xe34], edx
jmp 0x100240f0
cmp dword [ebp - 0xe34], 0
jne 0x1002481e
mov dword [ebp - 0xeb8], 0
jmp 0x1002482e
mov eax, dword [ebp - 0xe34]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xeb8], eax
mov edx, dword [ebp - 0xeb8]
mov dword [ebp - 0xec4], edx
jmp 0x10024b70
mov byte [ebp - 0x98c], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x98b], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x98a], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x989], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x988], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x987], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x986], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x985], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x984], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x983], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x982], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x981], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x980], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x97f], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x97e], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0x97d], al
xor edx, edx
mov byte [ebp - 0x97c], dl
mov byte [ebp - 0x97b], 0
movzx eax, byte [ebp - 0x97b]
test eax, eax
jne 0x10024af6
mov dword [ebp - 0xd50], 0
jmp 0x10024a6d
mov ecx, dword [ebp - 0xd50]
add ecx, 1
mov dword [ebp - 0xd50], ecx
cmp dword [ebp - 0xd50], 0xf
jae 0x10024ad3
lea edx, [ebp - 0x98b]
mov dword [ebp - 0x14ec], edx
mov eax, dword [ebp - 0xd50]
push eax
mov ecx, dword [ebp - 0x14ec]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x98c]
call fcn.100030a0
mov byte [ebp - 0xb30], al
lea eax, [ebp - 0x98b]
mov dword [ebp - 0x14f0], eax
mov ecx, dword [ebp - 0xd50]
push ecx
mov ecx, dword [ebp - 0x14f0]
call fcn.100030c0
mov dl, byte [ebp - 0xb30]
mov byte [eax], dl
jmp 0x10024a5e
lea eax, [ebp - 0x98b]
mov dword [ebp - 0x14f4], eax
push 0xf
mov ecx, dword [ebp - 0x14f4]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x97b], 1
lea ecx, [ebp - 0x98b]
call fcn.100030b0
mov dword [ebp - 0x14f8], eax
mov ecx, dword [ebp - 0xebc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x14fc], eax
mov edx, dword [ebp - 0x14f8]
push edx
mov eax, dword [ebp - 0x14fc]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1500], eax
mov ecx, dword [ebp - 0x1500]
mov dword [ebp - 0x1504], ecx
mov edx, dword [ebp - 0x1504]
mov dword [ebp - 0x1508], edx
push 0
mov eax, dword [ebp - 0xec0]
push eax
call dword [ebp - 0x1508]
add esp, 8
mov dword [ebp - 0x150c], eax
mov ecx, dword [ebp - 0x150c]
mov dword [ebp - 0xec4], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xec4]
mov dword [edx + 0x30], eax
mov byte [ebp - 0x9a0], 0x75
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VGUI_Surface031]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VGUI_Surface031]
push ecx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VGUI_Surface031]
push ecx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VGUI_Surface031]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VGUI_Surface031]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x99a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VGUI_Surface031]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x999], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VGUI_Surface031]
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x998], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x997], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x996], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x995], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x994], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x993], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x992], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VGUI_Surface031]
push edx
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0x991], al
xor eax, eax
mov byte [ebp - 0x990], al
mov byte [ebp - 0x98f], 0
movzx ecx, byte [ebp - 0x98f]
test ecx, ecx
jne 0x10024e33
mov dword [ebp - 0xd4c], 0
jmp 0x10024daa
mov edx, dword [ebp - 0xd4c]
add edx, 1
mov dword [ebp - 0xd4c], edx
cmp dword [ebp - 0xd4c], 0xf
jae 0x10024e10
lea eax, [ebp - 0x99f]
mov dword [ebp - 0x1510], eax
mov ecx, dword [ebp - 0xd4c]
push ecx
mov ecx, dword [ebp - 0x1510]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x9a0]
call fcn.100030a0
mov byte [ebp - 0xb31], al
lea ecx, [ebp - 0x99f]
mov dword [ebp - 0x1514], ecx
mov edx, dword [ebp - 0xd4c]
push edx
mov ecx, dword [ebp - 0x1514]
call fcn.100030c0
mov cl, byte [ebp - 0xb31]
mov byte [eax], cl
jmp 0x10024d9b
lea edx, [ebp - 0x99f]
mov dword [ebp - 0x1518], edx
push 0xf
mov ecx, dword [ebp - 0x1518]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x98f], 1
lea ecx, [ebp - 0x99f]
call fcn.100030b0
mov dword [ebp - 0xee8], eax
mov byte [ebp - 0xa88], 0x69
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.vguimatsurface.dll]
push edx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa87], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa86], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.vguimatsurface.dll]
push eax
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa85], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.vguimatsurface.dll]
push eax
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa84], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.vguimatsurface.dll]
push edx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa83], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.vguimatsurface.dll]
push edx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa82], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.vguimatsurface.dll]
push edx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa81], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.vguimatsurface.dll]
push edx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa80], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7f], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7e], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7d], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7c], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7b], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa7a], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa79], al
mov edx, 1
imul eax, edx, 0xf
movzx ecx, byte [eax + str.vguimatsurface.dll]
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa78], al
mov edx, 1
shl edx, 4
movzx eax, byte [edx + str.vguimatsurface.dll]
push eax
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa77], al
mov ecx, 1
imul edx, ecx, 0x11
movzx eax, byte [edx + str.vguimatsurface.dll]
push eax
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xa76], al
xor ecx, ecx
mov byte [ebp - 0xa75], cl
mov byte [ebp - 0xa74], 0
movzx edx, byte [ebp - 0xa74]
test edx, edx
jne 0x1002515e
mov dword [ebp - 0xd48], 0
jmp 0x100250d5
mov eax, dword [ebp - 0xd48]
add eax, 1
mov dword [ebp - 0xd48], eax
cmp dword [ebp - 0xd48], 0x12
jae 0x1002513b
lea ecx, [ebp - 0xa87]
mov dword [ebp - 0x151c], ecx
mov edx, dword [ebp - 0xd48]
push edx
mov ecx, dword [ebp - 0x151c]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa88]
call fcn.100030a0
mov byte [ebp - 0xb32], al
lea edx, [ebp - 0xa87]
mov dword [ebp - 0x1520], edx
mov eax, dword [ebp - 0xd48]
push eax
mov ecx, dword [ebp - 0x1520]
call fcn.100030c0
mov cl, byte [ebp - 0xb32]
mov byte [eax], cl
jmp 0x100250c6
lea edx, [ebp - 0xa87]
mov dword [ebp - 0x1524], edx
push 0x12
mov ecx, dword [ebp - 0x1524]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa74], 1
lea ecx, [ebp - 0xa87]
call fcn.100030b0
mov dword [ebp - 0xee4], eax
xor eax, eax
je 0x10025c39
mov ecx, dword [ebp - 0xee4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1538], eax
mov byte [ebp - 0x9b4], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9b3], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9b2], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9b1], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9b0], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9af], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9ae], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9ad], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9ac], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9ab], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9aa], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9a9], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9a8], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9a7], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9a6], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0x9a5], al
xor ecx, ecx
mov byte [ebp - 0x9a4], cl
mov byte [ebp - 0x9a3], 0
movzx edx, byte [ebp - 0x9a3]
test edx, edx
jne 0x10025441
mov dword [ebp - 0xd44], 0
jmp 0x100253b8
mov eax, dword [ebp - 0xd44]
add eax, 1
mov dword [ebp - 0xd44], eax
cmp dword [ebp - 0xd44], 0xf
jae 0x1002541e
lea ecx, [ebp - 0x9b3]
mov dword [ebp - 0x1528], ecx
mov edx, dword [ebp - 0xd44]
push edx
mov ecx, dword [ebp - 0x1528]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x9b4]
call fcn.100030a0
mov byte [ebp - 0xb33], al
lea edx, [ebp - 0x9b3]
mov dword [ebp - 0x152c], edx
mov eax, dword [ebp - 0xd44]
push eax
mov ecx, dword [ebp - 0x152c]
call fcn.100030c0
mov cl, byte [ebp - 0xb33]
mov byte [eax], cl
jmp 0x100253a9
lea edx, [ebp - 0x9b3]
mov dword [ebp - 0x1530], edx
push 0xf
mov ecx, dword [ebp - 0x1530]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x9a3], 1
lea ecx, [ebp - 0x9b3]
call fcn.100030b0
mov dword [ebp - 0x1534], eax
mov eax, dword [ebp - 0x1534]
push eax
mov ecx, dword [ebp - 0x1538]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xd40], eax
mov edx, dword [ebp - 0xd40]
add edx, 4
mov dword [ebp - 0xd40], edx
mov eax, dword [ebp - 0xd40]
mov dword [ebp - 0xba0], eax
mov ecx, dword [ebp - 0xba0]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x153c], edx
mov eax, dword [ebp - 0xba0]
add eax, 5
mov dword [ebp - 0xba0], eax
mov ecx, dword [ebp - 0xba0]
add ecx, dword [ebp - 0x153c]
mov dword [ebp - 0xba0], ecx
mov edx, dword [ebp - 0xba0]
mov dword [ebp - 0xd40], edx
mov dword [ebp - 0xe3c], 0
mov dword [ebp - 0xedc], 0xffffffff
mov eax, dword [ebp - 0xd40]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x734], edx
jmp 0x100254f9
mov eax, dword [ebp - 0x734]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x734], ecx
cmp dword [ebp - 0x734], 0
je 0x10025c03
push 0x40
push 0
lea edx, [ebp - 0x390]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x730], 0
mov dword [ebp - 0x730], 0
jmp 0x1002553e
mov eax, dword [ebp - 0x730]
add eax, 1
mov dword [ebp - 0x730], eax
mov ecx, dword [ebp - 0x734]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x730]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x10025597
mov edx, dword [ebp - 0x734]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x730]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10025597
mov eax, dword [ebp - 0x734]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x730]
mov eax, dword [ebp - 0x730]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x390], cl
jmp 0x1002552f
mov edx, dword [ebp - 0x730]
mov dword [ebp - 0xec8], edx
cmp dword [ebp - 0xec8], 0x40
jae 0x100255ae
jmp 0x100255b3
call fcn.100341c5
mov eax, dword [ebp - 0xec8]
mov byte [ebp + eax - 0x390], 0
mov ecx, dword [ebp - 0xee8]
mov dword [ebp - 0xdac], ecx
lea edx, [ebp - 0x390]
mov dword [ebp - 0xda4], edx
mov eax, dword [ebp - 0xda4]
mov cl, byte [eax]
mov byte [ebp - 0xb34], cl
mov edx, dword [ebp - 0xdac]
cmp cl, byte [edx]
jne 0x10025637
cmp byte [ebp - 0xb34], 0
je 0x1002562b
mov eax, dword [ebp - 0xda4]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb35], cl
mov edx, dword [ebp - 0xdac]
cmp cl, byte [edx + 1]
jne 0x10025637
add dword [ebp - 0xda4], 2
add dword [ebp - 0xdac], 2
cmp byte [ebp - 0xb35], 0
jne 0x100255d9
mov dword [ebp - 0xecc], 0
jmp 0x10025642
sbb eax, eax
or eax, 1
mov dword [ebp - 0xecc], eax
mov ecx, dword [ebp - 0xecc]
mov dword [ebp - 0x1540], ecx
cmp dword [ebp - 0x1540], 0
jne 0x10025bfe
mov edx, dword [ebp - 0x734]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x19ac]
call fcn.10007f70
mov dword [ebp - 4], 0xc
mov byte [ebp - 0x430], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x42a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x429], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x428], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x427], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0x426], al
xor eax, eax
mov byte [ebp - 0x425], al
mov byte [ebp - 0x424], 0
movzx ecx, byte [ebp - 0x424]
test ecx, ecx
jne 0x10025889
mov dword [ebp - 0xc84], 0
jmp 0x10025800
mov edx, dword [ebp - 0xc84]
add edx, 1
mov dword [ebp - 0xc84], edx
cmp dword [ebp - 0xc84], 0xa
jae 0x10025866
lea eax, [ebp - 0x42f]
mov dword [ebp - 0x1544], eax
mov ecx, dword [ebp - 0xc84]
push ecx
mov ecx, dword [ebp - 0x1544]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x430]
call fcn.100030a0
mov byte [ebp - 0xb36], al
lea ecx, [ebp - 0x42f]
mov dword [ebp - 0x1548], ecx
mov edx, dword [ebp - 0xc84]
push edx
mov ecx, dword [ebp - 0x1548]
call fcn.100030c0
mov cl, byte [ebp - 0xb36]
mov byte [eax], cl
jmp 0x100257f1
lea edx, [ebp - 0x42f]
mov dword [ebp - 0x154c], edx
push 0xa
mov ecx, dword [ebp - 0x154c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x424], 1
lea ecx, [ebp - 0x42f]
call fcn.100030b0
mov dword [ebp - 0x1550], eax
push 0
mov eax, dword [ebp - 0x1550]
push eax
lea ecx, [ebp - 0x19ac]
call fcn.1002b450
mov dword [ebp - 0xdb0], eax
cmp dword [ebp - 0xdb0], 0xffffffff
je 0x10025b6c
mov byte [ebp - 0x420], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x41a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x419], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x418], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x417], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0x416], al
xor eax, eax
mov byte [ebp - 0x415], al
mov byte [ebp - 0x414], 0
movzx ecx, byte [ebp - 0x414]
test ecx, ecx
jne 0x10025ad3
mov dword [ebp - 0xc80], 0
jmp 0x10025a4a
mov edx, dword [ebp - 0xc80]
add edx, 1
mov dword [ebp - 0xc80], edx
cmp dword [ebp - 0xc80], 0xa
jae 0x10025ab0
lea eax, [ebp - 0x41f]
mov dword [ebp - 0x1554], eax
mov ecx, dword [ebp - 0xc80]
push ecx
mov ecx, dword [ebp - 0x1554]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x420]
call fcn.100030a0
mov byte [ebp - 0xb37], al
lea ecx, [ebp - 0x41f]
mov dword [ebp - 0x1558], ecx
mov edx, dword [ebp - 0xc80]
push edx
mov ecx, dword [ebp - 0x1558]
call fcn.100030c0
mov cl, byte [ebp - 0xb37]
mov byte [eax], cl
jmp 0x10025a3b
lea edx, [ebp - 0x41f]
mov dword [ebp - 0x155c], edx
push 0xa
mov ecx, dword [ebp - 0x155c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x414], 1
lea ecx, [ebp - 0x41f]
call fcn.100030b0
mov dword [ebp - 0x1560], eax
mov eax, dword [ebp - 0xdb0]
push eax
mov ecx, dword [ebp - 0x1560]
push ecx
lea ecx, [ebp - 0x19ac]
call fcn.1002b3f0
mov dword [ebp - 0xe38], eax
cmp dword [ebp - 0xe38], 0xffffffff
je 0x10025b20
mov edx, dword [ebp - 0xe38]
sub edx, dword [ebp - 0xdb0]
mov dword [ebp - 0xed0], edx
jmp 0x10025b2c
mov eax, dword [ebp - 0xe38]
mov dword [ebp - 0xed0], eax
mov ecx, dword [ebp - 0xed0]
push ecx
mov edx, dword [ebp - 0xdb0]
push edx
lea eax, [ebp - 0x1994]
push eax
lea ecx, [ebp - 0x19ac]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x1000000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x1994]
mov dword [ebp - 0xed4], edx
jmp 0x10025b94
lea ecx, [ebp - 0x1994]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x1000000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x1994]
mov dword [ebp - 0xed4], ecx
mov edx, dword [ebp - 0xed4]
mov dword [ebp - 0x1564], edx
mov ecx, dword [ebp - 0x1564]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xed8], eax
lea ecx, [ebp - 0x1994]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19ac]
call fcn.10007f20
mov eax, dword [ebp - 0xed8]
cmp eax, dword [ebp - 0xedc]
jle 0x10025bfe
mov ecx, dword [ebp - 0xed8]
mov dword [ebp - 0xedc], ecx
mov edx, dword [ebp - 0x734]
mov dword [ebp - 0xe3c], edx
jmp 0x100254ea
cmp dword [ebp - 0xe3c], 0
jne 0x10025c18
mov dword [ebp - 0xee0], 0
jmp 0x10025c28
mov eax, dword [ebp - 0xe3c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xee0], eax
mov edx, dword [ebp - 0xee0]
mov dword [ebp - 0xeec], edx
jmp 0x10025f6a
mov byte [ebp - 0x9c8], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c7], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c6], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c5], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c4], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c3], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c2], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c1], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9c0], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9bf], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9be], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9bd], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9bc], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9bb], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9ba], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0x9b9], al
xor edx, edx
mov byte [ebp - 0x9b8], dl
mov byte [ebp - 0x9b7], 0
movzx eax, byte [ebp - 0x9b7]
test eax, eax
jne 0x10025ef0
mov dword [ebp - 0xc7c], 0
jmp 0x10025e67
mov ecx, dword [ebp - 0xc7c]
add ecx, 1
mov dword [ebp - 0xc7c], ecx
cmp dword [ebp - 0xc7c], 0xf
jae 0x10025ecd
lea edx, [ebp - 0x9c7]
mov dword [ebp - 0x1568], edx
mov eax, dword [ebp - 0xc7c]
push eax
mov ecx, dword [ebp - 0x1568]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x9c8]
call fcn.100030a0
mov byte [ebp - 0xb38], al
lea eax, [ebp - 0x9c7]
mov dword [ebp - 0x156c], eax
mov ecx, dword [ebp - 0xc7c]
push ecx
mov ecx, dword [ebp - 0x156c]
call fcn.100030c0
mov dl, byte [ebp - 0xb38]
mov byte [eax], dl
jmp 0x10025e58
lea eax, [ebp - 0x9c7]
mov dword [ebp - 0x1570], eax
push 0xf
mov ecx, dword [ebp - 0x1570]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x9b7], 1
lea ecx, [ebp - 0x9c7]
call fcn.100030b0
mov dword [ebp - 0x1574], eax
mov ecx, dword [ebp - 0xee4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1578], eax
mov edx, dword [ebp - 0x1574]
push edx
mov eax, dword [ebp - 0x1578]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x157c], eax
mov ecx, dword [ebp - 0x157c]
mov dword [ebp - 0x1580], ecx
mov edx, dword [ebp - 0x1580]
mov dword [ebp - 0x1584], edx
push 0
mov eax, dword [ebp - 0xee8]
push eax
call dword [ebp - 0x1584]
add esp, 8
mov dword [ebp - 0x1588], eax
mov ecx, dword [ebp - 0x1588]
mov dword [ebp - 0xeec], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xeec]
mov dword [edx + 0x34], eax
mov byte [ebp - 0x75c], 0x13
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineCvar007]
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x75b], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x75a], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineCvar007]
push ecx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x759], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineCvar007]
push ecx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x758], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineCvar007]
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x757], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineCvar007]
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x756], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineCvar007]
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x755], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineCvar007]
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x754], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x753], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x752], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x751], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x750], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x74f], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineCvar007]
push edx
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0x74e], al
xor eax, eax
mov byte [ebp - 0x74d], al
mov byte [ebp - 0x74c], 0
movzx ecx, byte [ebp - 0x74c]
test ecx, ecx
jne 0x1002620c
mov dword [ebp - 0xc30], 0
jmp 0x10026183
mov edx, dword [ebp - 0xc30]
add edx, 1
mov dword [ebp - 0xc30], edx
cmp dword [ebp - 0xc30], 0xe
jae 0x100261e9
lea eax, [ebp - 0x75b]
mov dword [ebp - 0x158c], eax
mov ecx, dword [ebp - 0xc30]
push ecx
mov ecx, dword [ebp - 0x158c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x75c]
call fcn.100030a0
mov byte [ebp - 0xb39], al
lea ecx, [ebp - 0x75b]
mov dword [ebp - 0x1590], ecx
mov edx, dword [ebp - 0xc30]
push edx
mov ecx, dword [ebp - 0x1590]
call fcn.100030c0
mov cl, byte [ebp - 0xb39]
mov byte [eax], cl
jmp 0x10026174
lea edx, [ebp - 0x75b]
mov dword [ebp - 0x1594], edx
push 0xe
mov ecx, dword [ebp - 0x1594]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x74c], 1
lea ecx, [ebp - 0x75b]
call fcn.100030b0
mov dword [ebp - 0xf10], eax
mov byte [ebp - 0x6c0], 4
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.vstdlib.dll]
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6bf], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.vstdlib.dll]
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6be], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.vstdlib.dll]
push eax
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6bd], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.vstdlib.dll]
push eax
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6bc], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.vstdlib.dll]
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6bb], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.vstdlib.dll]
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6ba], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.vstdlib.dll]
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6b9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.vstdlib.dll]
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6b8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.vstdlib.dll]
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6b7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.vstdlib.dll]
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6b6], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.vstdlib.dll]
push ecx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0x6b5], al
xor edx, edx
mov byte [ebp - 0x6b4], dl
mov byte [ebp - 0x6b3], 0
movzx eax, byte [ebp - 0x6b3]
test eax, eax
jne 0x10026450
mov dword [ebp - 0xc78], 0
jmp 0x100263c7
mov ecx, dword [ebp - 0xc78]
add ecx, 1
mov dword [ebp - 0xc78], ecx
cmp dword [ebp - 0xc78], 0xb
jae 0x1002642d
lea edx, [ebp - 0x6bf]
mov dword [ebp - 0x1598], edx
mov eax, dword [ebp - 0xc78]
push eax
mov ecx, dword [ebp - 0x1598]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x6c0]
call fcn.100030a0
mov byte [ebp - 0xb3a], al
lea eax, [ebp - 0x6bf]
mov dword [ebp - 0x159c], eax
mov ecx, dword [ebp - 0xc78]
push ecx
mov ecx, dword [ebp - 0x159c]
call fcn.100030c0
mov dl, byte [ebp - 0xb3a]
mov byte [eax], dl
jmp 0x100263b8
lea eax, [ebp - 0x6bf]
mov dword [ebp - 0x15a0], eax
push 0xb
mov ecx, dword [ebp - 0x15a0]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x6b3], 1
lea ecx, [ebp - 0x6bf]
call fcn.100030b0
mov dword [ebp - 0xf0c], eax
xor ecx, ecx
je 0x10026f2b
mov edx, dword [ebp - 0xf0c]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x15b4], eax
mov byte [ebp - 0x9dc], 0x3a
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9db], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9da], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d9], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d8], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d7], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d6], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d5], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d4], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d3], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d2], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d1], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9d0], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9cf], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9ce], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0x9cd], al
xor edx, edx
mov byte [ebp - 0x9cc], dl
mov byte [ebp - 0x9cb], 0
movzx eax, byte [ebp - 0x9cb]
test eax, eax
jne 0x10026733
mov dword [ebp - 0xc74], 0
jmp 0x100266aa
mov ecx, dword [ebp - 0xc74]
add ecx, 1
mov dword [ebp - 0xc74], ecx
cmp dword [ebp - 0xc74], 0xf
jae 0x10026710
lea edx, [ebp - 0x9db]
mov dword [ebp - 0x15a4], edx
mov eax, dword [ebp - 0xc74]
push eax
mov ecx, dword [ebp - 0x15a4]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x9dc]
call fcn.100030a0
mov byte [ebp - 0xb3b], al
lea eax, [ebp - 0x9db]
mov dword [ebp - 0x15a8], eax
mov ecx, dword [ebp - 0xc74]
push ecx
mov ecx, dword [ebp - 0x15a8]
call fcn.100030c0
mov dl, byte [ebp - 0xb3b]
mov byte [eax], dl
jmp 0x1002669b
lea eax, [ebp - 0x9db]
mov dword [ebp - 0x15ac], eax
push 0xf
mov ecx, dword [ebp - 0x15ac]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x9cb], 1
lea ecx, [ebp - 0x9db]
call fcn.100030b0
mov dword [ebp - 0x15b0], eax
mov ecx, dword [ebp - 0x15b0]
push ecx
mov edx, dword [ebp - 0x15b4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc70], eax
mov eax, dword [ebp - 0xc70]
add eax, 4
mov dword [ebp - 0xc70], eax
mov ecx, dword [ebp - 0xc70]
mov dword [ebp - 0xba4], ecx
mov edx, dword [ebp - 0xba4]
mov eax, dword [edx + 1]
mov dword [ebp - 0x15b8], eax
mov ecx, dword [ebp - 0xba4]
add ecx, 5
mov dword [ebp - 0xba4], ecx
mov edx, dword [ebp - 0xba4]
add edx, dword [ebp - 0x15b8]
mov dword [ebp - 0xba4], edx
mov eax, dword [ebp - 0xba4]
mov dword [ebp - 0xc70], eax
mov dword [ebp - 0xe44], 0
mov dword [ebp - 0xf04], 0xffffffff
mov ecx, dword [ebp - 0xc70]
mov edx, dword [ecx + 6]
mov eax, dword [edx]
mov dword [ebp - 0x710], eax
jmp 0x100267eb
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x710], edx
cmp dword [ebp - 0x710], 0
je 0x10026ef5
push 0x40
push 0
lea eax, [ebp - 0x350]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x738], 0
mov dword [ebp - 0x738], 0
jmp 0x10026830
mov ecx, dword [ebp - 0x738]
add ecx, 1
mov dword [ebp - 0x738], ecx
mov edx, dword [ebp - 0x710]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x738]
movsx edx, byte [eax + ecx]
test edx, edx
je 0x10026889
mov eax, dword [ebp - 0x710]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x738]
movsx eax, byte [ecx + edx]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10026889
mov ecx, dword [ebp - 0x710]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x738]
mov ecx, dword [ebp - 0x738]
mov dl, byte [edx + ecx]
mov byte [ebp + eax - 0x350], dl
jmp 0x10026821
mov eax, dword [ebp - 0x738]
mov dword [ebp - 0xff0], eax
cmp dword [ebp - 0xff0], 0x40
jae 0x100268a0
jmp 0x100268a5
call fcn.100341c5
mov ecx, dword [ebp - 0xff0]
mov byte [ebp + ecx - 0x350], 0
mov edx, dword [ebp - 0xf10]
mov dword [ebp - 0xdb8], edx
lea eax, [ebp - 0x350]
mov dword [ebp - 0xdb4], eax
mov ecx, dword [ebp - 0xdb4]
mov dl, byte [ecx]
mov byte [ebp - 0xb3c], dl
mov eax, dword [ebp - 0xdb8]
cmp dl, byte [eax]
jne 0x10026929
cmp byte [ebp - 0xb3c], 0
je 0x1002691d
mov ecx, dword [ebp - 0xdb4]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb3d], dl
mov eax, dword [ebp - 0xdb8]
cmp dl, byte [eax + 1]
jne 0x10026929
add dword [ebp - 0xdb4], 2
add dword [ebp - 0xdb8], 2
cmp byte [ebp - 0xb3d], 0
jne 0x100268cb
mov dword [ebp - 0xef4], 0
jmp 0x10026934
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0xef4], ecx
mov edx, dword [ebp - 0xef4]
mov dword [ebp - 0x15bc], edx
cmp dword [ebp - 0x15bc], 0
jne 0x10026ef0
mov eax, dword [ebp - 0x710]
mov ecx, dword [eax + 4]
push ecx
lea ecx, [ebp - 0x19dc]
call fcn.10007f70
mov dword [ebp - 4], 0xd
mov byte [ebp - 0x410], 0xd
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x40a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x409], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x408], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x407], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0x406], al
xor ecx, ecx
mov byte [ebp - 0x405], cl
mov byte [ebp - 0x404], 0
movzx edx, byte [ebp - 0x404]
test edx, edx
jne 0x10026b7b
mov dword [ebp - 0xc6c], 0
jmp 0x10026af2
mov eax, dword [ebp - 0xc6c]
add eax, 1
mov dword [ebp - 0xc6c], eax
cmp dword [ebp - 0xc6c], 0xa
jae 0x10026b58
lea ecx, [ebp - 0x40f]
mov dword [ebp - 0x15c0], ecx
mov edx, dword [ebp - 0xc6c]
push edx
mov ecx, dword [ebp - 0x15c0]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x410]
call fcn.100030a0
mov byte [ebp - 0xb3e], al
lea edx, [ebp - 0x40f]
mov dword [ebp - 0x15c4], edx
mov eax, dword [ebp - 0xc6c]
push eax
mov ecx, dword [ebp - 0x15c4]
call fcn.100030c0
mov cl, byte [ebp - 0xb3e]
mov byte [eax], cl
jmp 0x10026ae3
lea edx, [ebp - 0x40f]
mov dword [ebp - 0x15c8], edx
push 0xa
mov ecx, dword [ebp - 0x15c8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x404], 1
lea ecx, [ebp - 0x40f]
call fcn.100030b0
mov dword [ebp - 0x15cc], eax
push 0
mov eax, dword [ebp - 0x15cc]
push eax
lea ecx, [ebp - 0x19dc]
call fcn.1002b450
mov dword [ebp - 0xdbc], eax
cmp dword [ebp - 0xdbc], 0xffffffff
je 0x10026e5e
mov byte [ebp - 0x400], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3ff], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3fe], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3fd], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3fc], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3fb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3fa], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3f9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3f8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3f7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0x3f6], al
xor eax, eax
mov byte [ebp - 0x3f5], al
mov byte [ebp - 0x3f4], 0
movzx ecx, byte [ebp - 0x3f4]
test ecx, ecx
jne 0x10026dc5
mov dword [ebp - 0xc68], 0
jmp 0x10026d3c
mov edx, dword [ebp - 0xc68]
add edx, 1
mov dword [ebp - 0xc68], edx
cmp dword [ebp - 0xc68], 0xa
jae 0x10026da2
lea eax, [ebp - 0x3ff]
mov dword [ebp - 0x15d0], eax
mov ecx, dword [ebp - 0xc68]
push ecx
mov ecx, dword [ebp - 0x15d0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x400]
call fcn.100030a0
mov byte [ebp - 0xb3f], al
lea ecx, [ebp - 0x3ff]
mov dword [ebp - 0x15d4], ecx
mov edx, dword [ebp - 0xc68]
push edx
mov ecx, dword [ebp - 0x15d4]
call fcn.100030c0
mov cl, byte [ebp - 0xb3f]
mov byte [eax], cl
jmp 0x10026d2d
lea edx, [ebp - 0x3ff]
mov dword [ebp - 0x15d8], edx
push 0xa
mov ecx, dword [ebp - 0x15d8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x3f4], 1
lea ecx, [ebp - 0x3ff]
call fcn.100030b0
mov dword [ebp - 0x15dc], eax
mov eax, dword [ebp - 0xdbc]
push eax
mov ecx, dword [ebp - 0x15dc]
push ecx
lea ecx, [ebp - 0x19dc]
call fcn.1002b3f0
mov dword [ebp - 0xe40], eax
cmp dword [ebp - 0xe40], 0xffffffff
je 0x10026e12
mov edx, dword [ebp - 0xe40]
sub edx, dword [ebp - 0xdbc]
mov dword [ebp - 0xef8], edx
jmp 0x10026e1e
mov eax, dword [ebp - 0xe40]
mov dword [ebp - 0xef8], eax
mov ecx, dword [ebp - 0xef8]
push ecx
mov edx, dword [ebp - 0xdbc]
push edx
lea eax, [ebp - 0x19c4]
push eax
lea ecx, [ebp - 0x19dc]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x4000000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x19c4]
mov dword [ebp - 0xefc], edx
jmp 0x10026e86
lea ecx, [ebp - 0x19c4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x4000000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x19c4]
mov dword [ebp - 0xefc], ecx
mov edx, dword [ebp - 0xefc]
mov dword [ebp - 0x15e0], edx
mov ecx, dword [ebp - 0x15e0]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xf00], eax
lea ecx, [ebp - 0x19c4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x19dc]
call fcn.10007f20
mov eax, dword [ebp - 0xf00]
cmp eax, dword [ebp - 0xf04]
jle 0x10026ef0
mov ecx, dword [ebp - 0xf00]
mov dword [ebp - 0xf04], ecx
mov edx, dword [ebp - 0x710]
mov dword [ebp - 0xe44], edx
jmp 0x100267dc
cmp dword [ebp - 0xe44], 0
jne 0x10026f0a
mov dword [ebp - 0xf08], 0
jmp 0x10026f1a
mov eax, dword [ebp - 0xe44]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xf08], eax
mov edx, dword [ebp - 0xf08]
mov dword [ebp - 0xf14], edx
jmp 0x1002725c
mov byte [ebp - 0x9f0], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9ef], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9ee], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9ed], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9ec], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9eb], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9ea], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e9], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e8], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e7], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e6], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e5], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e4], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e3], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e2], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0x9e1], al
xor edx, edx
mov byte [ebp - 0x9e0], dl
mov byte [ebp - 0x9df], 0
movzx eax, byte [ebp - 0x9df]
test eax, eax
jne 0x100271e2
mov dword [ebp - 0xc64], 0
jmp 0x10027159
mov ecx, dword [ebp - 0xc64]
add ecx, 1
mov dword [ebp - 0xc64], ecx
cmp dword [ebp - 0xc64], 0xf
jae 0x100271bf
lea edx, [ebp - 0x9ef]
mov dword [ebp - 0x15e4], edx
mov eax, dword [ebp - 0xc64]
push eax
mov ecx, dword [ebp - 0x15e4]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x9f0]
call fcn.100030a0
mov byte [ebp - 0xb40], al
lea eax, [ebp - 0x9ef]
mov dword [ebp - 0x15e8], eax
mov ecx, dword [ebp - 0xc64]
push ecx
mov ecx, dword [ebp - 0x15e8]
call fcn.100030c0
mov dl, byte [ebp - 0xb40]
mov byte [eax], dl
jmp 0x1002714a
lea eax, [ebp - 0x9ef]
mov dword [ebp - 0x15ec], eax
push 0xf
mov ecx, dword [ebp - 0x15ec]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x9df], 1
lea ecx, [ebp - 0x9ef]
call fcn.100030b0
mov dword [ebp - 0x15f0], eax
mov ecx, dword [ebp - 0xf0c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x15f4], eax
mov edx, dword [ebp - 0x15f0]
push edx
mov eax, dword [ebp - 0x15f4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x15f8], eax
mov ecx, dword [ebp - 0x15f8]
mov dword [ebp - 0x15fc], ecx
mov edx, dword [ebp - 0x15fc]
mov dword [ebp - 0x1600], edx
push 0
mov eax, dword [ebp - 0xf10]
push eax
call dword [ebp - 0x1600]
add esp, 8
mov dword [ebp - 0x1604], eax
mov ecx, dword [ebp - 0x1604]
mov dword [ebp - 0xf14], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xf14]
mov dword [edx + 0x40], eax
mov byte [ebp - 0xa40], 0xc
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.VEngineEffects001]
push eax
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.VEngineEffects001]
push ecx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.VEngineEffects001]
push ecx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.VEngineEffects001]
push eax
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.VEngineEffects001]
push eax
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa3a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.VEngineEffects001]
push eax
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa39], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.VEngineEffects001]
push eax
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa38], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa37], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa36], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa35], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa34], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa33], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa32], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa31], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.VEngineEffects001]
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa30], al
mov eax, 1
shl eax, 4
movzx ecx, byte [eax + str.VEngineEffects001]
push ecx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xa2f], al
xor edx, edx
mov byte [ebp - 0xa2e], dl
mov byte [ebp - 0xa2d], 0
movzx eax, byte [ebp - 0xa2d]
test eax, eax
jne 0x10027561
mov dword [ebp - 0xc60], 0
jmp 0x100274d8
mov ecx, dword [ebp - 0xc60]
add ecx, 1
mov dword [ebp - 0xc60], ecx
cmp dword [ebp - 0xc60], 0x11
jae 0x1002753e
lea edx, [ebp - 0xa3f]
mov dword [ebp - 0x1608], edx
mov eax, dword [ebp - 0xc60]
push eax
mov ecx, dword [ebp - 0x1608]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0xa40]
call fcn.100030a0
mov byte [ebp - 0xb41], al
lea eax, [ebp - 0xa3f]
mov dword [ebp - 0x160c], eax
mov ecx, dword [ebp - 0xc60]
push ecx
mov ecx, dword [ebp - 0x160c]
call fcn.100030c0
mov dl, byte [ebp - 0xb41]
mov byte [eax], dl
jmp 0x100274c9
lea eax, [ebp - 0xa3f]
mov dword [ebp - 0x1610], eax
push 0x11
mov ecx, dword [ebp - 0x1610]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa2d], 1
lea ecx, [ebp - 0xa3f]
call fcn.100030b0
mov dword [ebp - 0xf38], eax
mov byte [ebp - 0x3f0], 0x5c
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3ef], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3ee], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3ed], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.engine.dll]
push ecx
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3ec], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3eb], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3ea], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3e9], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.engine.dll]
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3e8], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3e7], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.engine.dll]
push edx
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0x3e6], al
xor eax, eax
mov byte [ebp - 0x3e5], al
mov byte [ebp - 0x3e4], 0
movzx ecx, byte [ebp - 0x3e4]
test ecx, ecx
jne 0x10027784
mov dword [ebp - 0xc5c], 0
jmp 0x100276fb
mov edx, dword [ebp - 0xc5c]
add edx, 1
mov dword [ebp - 0xc5c], edx
cmp dword [ebp - 0xc5c], 0xa
jae 0x10027761
lea eax, [ebp - 0x3ef]
mov dword [ebp - 0x1614], eax
mov ecx, dword [ebp - 0xc5c]
push ecx
mov ecx, dword [ebp - 0x1614]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x3f0]
call fcn.100030a0
mov byte [ebp - 0xb42], al
lea ecx, [ebp - 0x3ef]
mov dword [ebp - 0x1618], ecx
mov edx, dword [ebp - 0xc5c]
push edx
mov ecx, dword [ebp - 0x1618]
call fcn.100030c0
mov cl, byte [ebp - 0xb42]
mov byte [eax], cl
jmp 0x100276ec
lea edx, [ebp - 0x3ef]
mov dword [ebp - 0x161c], edx
push 0xa
mov ecx, dword [ebp - 0x161c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x3e4], 1
lea ecx, [ebp - 0x3ef]
call fcn.100030b0
mov dword [ebp - 0xf34], eax
xor eax, eax
je 0x1002825f
mov ecx, dword [ebp - 0xf34]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1630], eax
mov byte [ebp - 0xa04], 0x3a
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0xa03], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0xa02], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0xa01], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0xa00], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9ff], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9fe], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9fd], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9fc], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9fb], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9fa], al
mov ecx, 1
imul edx, ecx, 0xa
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9f9], al
mov ecx, 1
imul edx, ecx, 0xb
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9f8], al
mov ecx, 1
imul edx, ecx, 0xc
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9f7], al
mov ecx, 1
imul edx, ecx, 0xd
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9f6], al
mov ecx, 1
imul edx, ecx, 0xe
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0x9f5], al
xor ecx, ecx
mov byte [ebp - 0x9f4], cl
mov byte [ebp - 0x9f3], 0
movzx edx, byte [ebp - 0x9f3]
test edx, edx
jne 0x10027a67
mov dword [ebp - 0xc58], 0
jmp 0x100279de
mov eax, dword [ebp - 0xc58]
add eax, 1
mov dword [ebp - 0xc58], eax
cmp dword [ebp - 0xc58], 0xf
jae 0x10027a44
lea ecx, [ebp - 0xa03]
mov dword [ebp - 0x1620], ecx
mov edx, dword [ebp - 0xc58]
push edx
mov ecx, dword [ebp - 0x1620]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0xa04]
call fcn.100030a0
mov byte [ebp - 0xb43], al
lea edx, [ebp - 0xa03]
mov dword [ebp - 0x1624], edx
mov eax, dword [ebp - 0xc58]
push eax
mov ecx, dword [ebp - 0x1624]
call fcn.100030c0
mov cl, byte [ebp - 0xb43]
mov byte [eax], cl
jmp 0x100279cf
lea edx, [ebp - 0xa03]
mov dword [ebp - 0x1628], edx
push 0xf
mov ecx, dword [ebp - 0x1628]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x9f3], 1
lea ecx, [ebp - 0xa03]
call fcn.100030b0
mov dword [ebp - 0x162c], eax
mov eax, dword [ebp - 0x162c]
push eax
mov ecx, dword [ebp - 0x1630]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc54], eax
mov edx, dword [ebp - 0xc54]
add edx, 4
mov dword [ebp - 0xc54], edx
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xbb8], eax
mov ecx, dword [ebp - 0xbb8]
mov edx, dword [ecx + 1]
mov dword [ebp - 0x1634], edx
mov eax, dword [ebp - 0xbb8]
add eax, 5
mov dword [ebp - 0xbb8], eax
mov ecx, dword [ebp - 0xbb8]
add ecx, dword [ebp - 0x1634]
mov dword [ebp - 0xbb8], ecx
mov edx, dword [ebp - 0xbb8]
mov dword [ebp - 0xc54], edx
mov dword [ebp - 0xe4c], 0
mov dword [ebp - 0xf2c], 0xffffffff
mov eax, dword [ebp - 0xc54]
mov ecx, dword [eax + 6]
mov edx, dword [ecx]
mov dword [ebp - 0x6cc], edx
jmp 0x10027b1f
mov eax, dword [ebp - 0x6cc]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x6cc], ecx
cmp dword [ebp - 0x6cc], 0
je 0x10028229
push 0x40
push 0
lea edx, [ebp - 0x310]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x6c8], 0
mov dword [ebp - 0x6c8], 0
jmp 0x10027b64
mov eax, dword [ebp - 0x6c8]
add eax, 1
mov dword [ebp - 0x6c8], eax
mov ecx, dword [ebp - 0x6cc]
mov edx, dword [ecx + 4]
mov eax, dword [ebp - 0x6c8]
movsx ecx, byte [edx + eax]
test ecx, ecx
je 0x10027bbd
mov edx, dword [ebp - 0x6cc]
mov eax, dword [edx + 4]
mov ecx, dword [ebp - 0x6c8]
movsx edx, byte [eax + ecx]
push edx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x10027bbd
mov eax, dword [ebp - 0x6cc]
mov ecx, dword [eax + 4]
mov edx, dword [ebp - 0x6c8]
mov eax, dword [ebp - 0x6c8]
mov cl, byte [ecx + eax]
mov byte [ebp + edx - 0x310], cl
jmp 0x10027b55
mov edx, dword [ebp - 0x6c8]
mov dword [ebp - 0xf18], edx
cmp dword [ebp - 0xf18], 0x40
jae 0x10027bd4
jmp 0x10027bd9
call fcn.100341c5
mov eax, dword [ebp - 0xf18]
mov byte [ebp + eax - 0x310], 0
mov ecx, dword [ebp - 0xf38]
mov dword [ebp - 0xdc4], ecx
lea edx, [ebp - 0x310]
mov dword [ebp - 0xdc0], edx
mov eax, dword [ebp - 0xdc0]
mov cl, byte [eax]
mov byte [ebp - 0xb44], cl
mov edx, dword [ebp - 0xdc4]
cmp cl, byte [edx]
jne 0x10027c5d
cmp byte [ebp - 0xb44], 0
je 0x10027c51
mov eax, dword [ebp - 0xdc0]
mov cl, byte [eax + 1]
mov byte [ebp - 0xb45], cl
mov edx, dword [ebp - 0xdc4]
cmp cl, byte [edx + 1]
jne 0x10027c5d
add dword [ebp - 0xdc0], 2
add dword [ebp - 0xdc4], 2
cmp byte [ebp - 0xb45], 0
jne 0x10027bff
mov dword [ebp - 0xf1c], 0
jmp 0x10027c68
sbb eax, eax
or eax, 1
mov dword [ebp - 0xf1c], eax
mov ecx, dword [ebp - 0xf1c]
mov dword [ebp - 0x1638], ecx
cmp dword [ebp - 0x1638], 0
jne 0x10028224
mov edx, dword [ebp - 0x6cc]
mov eax, dword [edx + 4]
push eax
lea ecx, [ebp - 0x1a0c]
call fcn.10007f70
mov dword [ebp - 4], 0xe
mov byte [ebp - 0x6a0], 0xd
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x69a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x699], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x698], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x697], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0x696], al
xor eax, eax
mov byte [ebp - 0x695], al
mov byte [ebp - 0x694], 0
movzx ecx, byte [ebp - 0x694]
test ecx, ecx
jne 0x10027eaf
mov dword [ebp - 0xc50], 0
jmp 0x10027e26
mov edx, dword [ebp - 0xc50]
add edx, 1
mov dword [ebp - 0xc50], edx
cmp dword [ebp - 0xc50], 0xa
jae 0x10027e8c
lea eax, [ebp - 0x69f]
mov dword [ebp - 0x163c], eax
mov ecx, dword [ebp - 0xc50]
push ecx
mov ecx, dword [ebp - 0x163c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x6a0]
call fcn.100030a0
mov byte [ebp - 0xb46], al
lea ecx, [ebp - 0x69f]
mov dword [ebp - 0x1640], ecx
mov edx, dword [ebp - 0xc50]
push edx
mov ecx, dword [ebp - 0x1640]
call fcn.100030c0
mov cl, byte [ebp - 0xb46]
mov byte [eax], cl
jmp 0x10027e17
lea edx, [ebp - 0x69f]
mov dword [ebp - 0x1644], edx
push 0xa
mov ecx, dword [ebp - 0x1644]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x694], 1
lea ecx, [ebp - 0x69f]
call fcn.100030b0
mov dword [ebp - 0x1648], eax
push 0
mov eax, dword [ebp - 0x1648]
push eax
lea ecx, [ebp - 0x1a0c]
call fcn.1002b450
mov dword [ebp - 0xdc8], eax
cmp dword [ebp - 0xdc8], 0xffffffff
je 0x10028192
mov byte [ebp - 0x690], 0x18
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.0123456789]
push ecx
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x68a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x689], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.0123456789]
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x688], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x687], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.0123456789]
push edx
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0x686], al
xor eax, eax
mov byte [ebp - 0x685], al
mov byte [ebp - 0x684], 0
movzx ecx, byte [ebp - 0x684]
test ecx, ecx
jne 0x100280f9
mov dword [ebp - 0xc4c], 0
jmp 0x10028070
mov edx, dword [ebp - 0xc4c]
add edx, 1
mov dword [ebp - 0xc4c], edx
cmp dword [ebp - 0xc4c], 0xa
jae 0x100280d6
lea eax, [ebp - 0x68f]
mov dword [ebp - 0x164c], eax
mov ecx, dword [ebp - 0xc4c]
push ecx
mov ecx, dword [ebp - 0x164c]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x690]
call fcn.100030a0
mov byte [ebp - 0xb47], al
lea ecx, [ebp - 0x68f]
mov dword [ebp - 0x1650], ecx
mov edx, dword [ebp - 0xc4c]
push edx
mov ecx, dword [ebp - 0x1650]
call fcn.100030c0
mov cl, byte [ebp - 0xb47]
mov byte [eax], cl
jmp 0x10028061
lea edx, [ebp - 0x68f]
mov dword [ebp - 0x1654], edx
push 0xa
mov ecx, dword [ebp - 0x1654]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x684], 1
lea ecx, [ebp - 0x68f]
call fcn.100030b0
mov dword [ebp - 0x1658], eax
mov eax, dword [ebp - 0xdc8]
push eax
mov ecx, dword [ebp - 0x1658]
push ecx
lea ecx, [ebp - 0x1a0c]
call fcn.1002b3f0
mov dword [ebp - 0xe48], eax
cmp dword [ebp - 0xe48], 0xffffffff
je 0x10028146
mov edx, dword [ebp - 0xe48]
sub edx, dword [ebp - 0xdc8]
mov dword [ebp - 0xf20], edx
jmp 0x10028152
mov eax, dword [ebp - 0xe48]
mov dword [ebp - 0xf20], eax
mov ecx, dword [ebp - 0xf20]
push ecx
mov edx, dword [ebp - 0xdc8]
push edx
lea eax, [ebp - 0x19f4]
push eax
lea ecx, [ebp - 0x1a0c]
call fcn.1002b390
mov ecx, dword [ebp - 0x3d4]
or ecx, 0x10000000
mov dword [ebp - 0x3d4], ecx
lea edx, [ebp - 0x19f4]
mov dword [ebp - 0xf24], edx
jmp 0x100281ba
lea ecx, [ebp - 0x19f4]
call fcn.10007fb0
mov eax, dword [ebp - 0x3d4]
or eax, 0x10000000
mov dword [ebp - 0x3d4], eax
lea ecx, [ebp - 0x19f4]
mov dword [ebp - 0xf24], ecx
mov edx, dword [ebp - 0xf24]
mov dword [ebp - 0x165c], edx
mov ecx, dword [ebp - 0x165c]
call fcn.10007f10
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
mov dword [ebp - 0xf28], eax
lea ecx, [ebp - 0x19f4]
call fcn.10007f20
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1a0c]
call fcn.10007f20
mov eax, dword [ebp - 0xf28]
cmp eax, dword [ebp - 0xf2c]
jle 0x10028224
mov ecx, dword [ebp - 0xf28]
mov dword [ebp - 0xf2c], ecx
mov edx, dword [ebp - 0x6cc]
mov dword [ebp - 0xe4c], edx
jmp 0x10027b10
cmp dword [ebp - 0xe4c], 0
jne 0x1002823e
mov dword [ebp - 0xf30], 0
jmp 0x1002824e
mov eax, dword [ebp - 0xe4c]
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0xf30], eax
mov edx, dword [ebp - 0xf30]
mov dword [ebp - 0xf3c], edx
jmp 0x10028590
mov byte [ebp - 0x824], 0x49
mov eax, 1
imul ecx, eax, 0
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x823], al
mov eax, 1
shl eax, 0
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x822], al
mov edx, 1
shl edx, 1
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x821], al
mov ecx, 1
imul edx, ecx, 3
movzx eax, byte [edx + str.CreateInterface]
push eax
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x820], al
mov ecx, 1
shl ecx, 2
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81f], al
mov eax, 1
imul ecx, eax, 5
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81e], al
mov eax, 1
imul ecx, eax, 6
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81d], al
mov eax, 1
imul ecx, eax, 7
movzx edx, byte [ecx + str.CreateInterface]
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81c], al
mov eax, 1
shl eax, 3
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81b], al
mov edx, 1
imul eax, edx, 9
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x81a], al
mov edx, 1
imul eax, edx, 0xa
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x819], al
mov edx, 1
imul eax, edx, 0xb
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x818], al
mov edx, 1
imul eax, edx, 0xc
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x817], al
mov edx, 1
imul eax, edx, 0xd
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x816], al
mov edx, 1
imul eax, edx, 0xe
movzx ecx, byte [eax + str.CreateInterface]
push ecx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0x815], al
xor edx, edx
mov byte [ebp - 0x814], dl
mov byte [ebp - 0x813], 0
movzx eax, byte [ebp - 0x813]
test eax, eax
jne 0x10028516
mov dword [ebp - 0xc48], 0
jmp 0x1002848d
mov ecx, dword [ebp - 0xc48]
add ecx, 1
mov dword [ebp - 0xc48], ecx
cmp dword [ebp - 0xc48], 0xf
jae 0x100284f3
lea edx, [ebp - 0x823]
mov dword [ebp - 0x1660], edx
mov eax, dword [ebp - 0xc48]
push eax
mov ecx, dword [ebp - 0x1660]
call fcn.100030c0
mov cl, byte [eax]
movzx edx, cl
push edx
lea ecx, [ebp - 0x824]
call fcn.100030a0
mov byte [ebp - 0xb48], al
lea eax, [ebp - 0x823]
mov dword [ebp - 0x1664], eax
mov ecx, dword [ebp - 0xc48]
push ecx
mov ecx, dword [ebp - 0x1664]
call fcn.100030c0
mov dl, byte [ebp - 0xb48]
mov byte [eax], dl
jmp 0x1002847e
lea eax, [ebp - 0x823]
mov dword [ebp - 0x1668], eax
push 0xf
mov ecx, dword [ebp - 0x1668]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x813], 1
lea ecx, [ebp - 0x823]
call fcn.100030b0
mov dword [ebp - 0x166c], eax
mov ecx, dword [ebp - 0xf34]
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1670], eax
mov edx, dword [ebp - 0x166c]
push edx
mov eax, dword [ebp - 0x1670]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1674], eax
mov ecx, dword [ebp - 0x1674]
mov dword [ebp - 0x1678], ecx
mov edx, dword [ebp - 0x1678]
mov dword [ebp - 0x167c], edx
push 0
mov eax, dword [ebp - 0xf38]
push eax
call dword [ebp - 0x167c]
add esp, 8
mov dword [ebp - 0x1680], eax
mov ecx, dword [ebp - 0x1680]
mov dword [ebp - 0xf3c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0xf3c]
mov dword [edx + 0x44], eax
mov byte [ebp - 0xa2c], 0x24
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.shaderapidx9.dll]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa2b], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa2a], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.shaderapidx9.dll]
push ecx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa29], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.shaderapidx9.dll]
push ecx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa28], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.shaderapidx9.dll]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa27], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.shaderapidx9.dll]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa26], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.shaderapidx9.dll]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa25], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.shaderapidx9.dll]
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa24], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa23], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa22], al
mov eax, 1
imul ecx, eax, 0xa
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa21], al
mov eax, 1
imul ecx, eax, 0xb
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa20], al
mov eax, 1
imul ecx, eax, 0xc
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa1f], al
mov eax, 1
imul ecx, eax, 0xd
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa1e], al
mov eax, 1
imul ecx, eax, 0xe
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa1d], al
mov eax, 1
imul ecx, eax, 0xf
movzx edx, byte [ecx + str.shaderapidx9.dll]
push edx
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xa1c], al
xor eax, eax
mov byte [ebp - 0xa1b], al
mov byte [ebp - 0xa1a], 0
movzx ecx, byte [ebp - 0xa1a]
test ecx, ecx
jne 0x10028874
mov dword [ebp - 0xc44], 0
jmp 0x100287eb
mov edx, dword [ebp - 0xc44]
add edx, 1
mov dword [ebp - 0xc44], edx
cmp dword [ebp - 0xc44], 0x10
jae 0x10028851
lea eax, [ebp - 0xa2b]
mov dword [ebp - 0x1684], eax
mov ecx, dword [ebp - 0xc44]
push ecx
mov ecx, dword [ebp - 0x1684]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0xa2c]
call fcn.100030a0
mov byte [ebp - 0xb49], al
lea ecx, [ebp - 0xa2b]
mov dword [ebp - 0x1688], ecx
mov edx, dword [ebp - 0xc44]
push edx
mov ecx, dword [ebp - 0x1688]
call fcn.100030c0
mov cl, byte [ebp - 0xb49]
mov byte [eax], cl
jmp 0x100287dc
lea edx, [ebp - 0xa2b]
mov dword [ebp - 0x168c], edx
push 0x10
mov ecx, dword [ebp - 0x168c]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0xa1a], 1
lea ecx, [ebp - 0xa2b]
call fcn.100030b0
mov dword [ebp - 0x1690], eax
mov eax, dword [ebp - 0x1690]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 0x1698], eax
mov dword [ebp - 0x1694], 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x188c], esp
push str.A1_________8B_08_6A_03
call fcn.10007f70
mov edx, dword [ebp - 0x1694]
mov ecx, dword [ebp - 0x1698]
call fcn.1002b5d0
add esp, 0x18
mov dword [ebp - 0x169c], eax
mov ecx, dword [ebp - 0x169c]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov ecx, dword [edx]
mov dword [eax + 4], ecx
mov byte [ebp - 0x680], 0x51
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x67a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x679], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x678], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x677], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0x676], al
xor ecx, ecx
mov byte [ebp - 0x675], cl
mov byte [ebp - 0x674], 0
movzx edx, byte [ebp - 0x674]
test edx, edx
jne 0x10028af3
mov dword [ebp - 0xc40], 0
jmp 0x10028a6a
mov eax, dword [ebp - 0xc40]
add eax, 1
mov dword [ebp - 0xc40], eax
cmp dword [ebp - 0xc40], 0xa
jae 0x10028ad0
lea ecx, [ebp - 0x67f]
mov dword [ebp - 0x16a0], ecx
mov edx, dword [ebp - 0xc40]
push edx
mov ecx, dword [ebp - 0x16a0]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x680]
call fcn.100030a0
mov byte [ebp - 0xb4a], al
lea edx, [ebp - 0x67f]
mov dword [ebp - 0x16a4], edx
mov eax, dword [ebp - 0xc40]
push eax
mov ecx, dword [ebp - 0x16a4]
call fcn.100030c0
mov cl, byte [ebp - 0xb4a]
mov byte [eax], cl
jmp 0x10028a5b
lea edx, [ebp - 0x67f]
mov dword [ebp - 0x16a8], edx
push 0xa
mov ecx, dword [ebp - 0x16a8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x674], 1
lea ecx, [ebp - 0x67f]
call fcn.100030b0
mov dword [ebp - 0x16ac], eax
mov eax, dword [ebp - 0x16ac]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, dword [eax + 0xfe244]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [edx + 0x48], eax
mov byte [ebp - 0x660], 0x2c
mov ecx, 1
imul edx, ecx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65f], al
mov ecx, 1
shl ecx, 0
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65e], al
mov eax, 1
shl eax, 1
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65d], al
mov edx, 1
imul eax, edx, 3
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65c], al
mov edx, 1
shl edx, 2
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65b], al
mov ecx, 1
imul edx, ecx, 5
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x65a], al
mov ecx, 1
imul edx, ecx, 6
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x659], al
mov ecx, 1
imul edx, ecx, 7
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x658], al
mov ecx, 1
shl ecx, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x657], al
mov eax, 1
imul ecx, eax, 9
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0x656], al
xor eax, eax
mov byte [ebp - 0x655], al
mov byte [ebp - 0x654], 0
movzx ecx, byte [ebp - 0x654]
test ecx, ecx
jne 0x10028d31
mov dword [ebp - 0xc3c], 0
jmp 0x10028ca8
mov edx, dword [ebp - 0xc3c]
add edx, 1
mov dword [ebp - 0xc3c], edx
cmp dword [ebp - 0xc3c], 0xa
jae 0x10028d0e
lea eax, [ebp - 0x65f]
mov dword [ebp - 0x16b0], eax
mov ecx, dword [ebp - 0xc3c]
push ecx
mov ecx, dword [ebp - 0x16b0]
call fcn.100030c0
mov dl, byte [eax]
movzx eax, dl
push eax
lea ecx, [ebp - 0x660]
call fcn.100030a0
mov byte [ebp - 0xb4b], al
lea ecx, [ebp - 0x65f]
mov dword [ebp - 0x16b4], ecx
mov edx, dword [ebp - 0xc3c]
push edx
mov ecx, dword [ebp - 0x16b4]
call fcn.100030c0
mov cl, byte [ebp - 0xb4b]
mov byte [eax], cl
jmp 0x10028c99
lea edx, [ebp - 0x65f]
mov dword [ebp - 0x16b8], edx
push 0xa
mov ecx, dword [ebp - 0x16b8]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x654], 1
lea ecx, [ebp - 0x65f]
call fcn.100030b0
mov dword [ebp - 0x16bc], eax
mov eax, dword [ebp - 0x16bc]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov ecx, dword [eax + 0x47f2]
mov edx, dword [ebp + 8]
mov eax, dword [ecx]
mov dword [edx + 0x4c], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
mov eax, 4
imul ecx, eax, 0x14
mov edx, dword [edx]
mov eax, dword [ecx + edx]
mov dword [ebp - 0x16c0], eax
mov ecx, dword [ebp - 0x16c0]
mov edx, dword [ecx + 0x28]
mov eax, dword [ebp + 8]
mov ecx, dword [edx]
mov dword [eax + 0x50], ecx
mov byte [ebp - 0x650], 0x1b
mov edx, 1
imul eax, edx, 0
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64f], al
mov edx, 1
shl edx, 0
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64e], al
mov ecx, 1
shl ecx, 1
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64d], al
mov eax, 1
imul ecx, eax, 3
movzx edx, byte [ecx + str.client.dll]
push edx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64c], al
mov eax, 1
shl eax, 2
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64b], al
mov edx, 1
imul eax, edx, 5
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x64a], al
mov edx, 1
imul eax, edx, 6
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x649], al
mov edx, 1
imul eax, edx, 7
movzx ecx, byte [eax + str.client.dll]
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x648], al
mov edx, 1
shl edx, 3
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x647], al
mov ecx, 1
imul edx, ecx, 9
movzx eax, byte [edx + str.client.dll]
push eax
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0x646], al
xor ecx, ecx
mov byte [ebp - 0x645], cl
mov byte [ebp - 0x644], 0
movzx edx, byte [ebp - 0x644]
test edx, edx
jne 0x10028f99
mov dword [ebp - 0xc38], 0
jmp 0x10028f10
mov eax, dword [ebp - 0xc38]
add eax, 1
mov dword [ebp - 0xc38], eax
cmp dword [ebp - 0xc38], 0xa
jae 0x10028f76
lea ecx, [ebp - 0x64f]
mov dword [ebp - 0x16c4], ecx
mov edx, dword [ebp - 0xc38]
push edx
mov ecx, dword [ebp - 0x16c4]
call fcn.100030c0
mov al, byte [eax]
movzx ecx, al
push ecx
lea ecx, [ebp - 0x650]
call fcn.100030a0
mov byte [ebp - 0xb4c], al
lea edx, [ebp - 0x64f]
mov dword [ebp - 0x16c8], edx
mov eax, dword [ebp - 0xc38]
push eax
mov ecx, dword [ebp - 0x16c8]
call fcn.100030c0
mov cl, byte [ebp - 0xb4c]
mov byte [eax], cl
jmp 0x10028f01
lea edx, [ebp - 0x64f]
mov dword [ebp - 0x16cc], edx
push 0xa
mov ecx, dword [ebp - 0x16cc]
call fcn.100030c0
mov byte [eax], 0
mov byte [ebp - 0x644], 1
lea ecx, [ebp - 0x64f]
call fcn.100030b0
mov dword [ebp - 0x1888], eax
mov eax, dword [ebp - 0x1888]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
add eax, 0x2280c0
mov dword [ebp - 0x16d4], eax
call dword [ebp - 0x16d4]
mov ecx, dword [ebp + 8]
mov dword [ecx + 8], eax
push 0x10028fdd
push 0x100164c9
call fcn.10015ff0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10033b17
mov esp, ebp
pop ebp
ret