Function at 0x1016c00
Capabilities:
Create thread

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x2004
call fcn.01047580
mov eax, dword [0x104c68c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov ecx, 0xe
mov esi, 0x100285c
lea edi, [ebp - 0x1ff8]
rep movsd dword es:[edi], dword [esi]
mov ax, word [0x10015d4]
mov word [ebp - 0x13b0], ax
push 0x3fe
push 0
lea ecx, [ebp - 0x13ae]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov dx, word [0x10015d4]
mov word [ebp - 0x17b0], dx
push 0x3fe
push 0
lea eax, [ebp - 0x17ae]
push eax
call sub.MSVCR80.dll_memset
add esp, 0xc
mov cx, word [0x10015d4]
mov word [ebp - 0x808], cx
push 0x3fe
push 0
lea edx, [ebp - 0x806]
push edx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov ax, word [0x10015d4]
mov word [ebp - 0xc08], ax
push 0x3fe
push 0
lea ecx, [ebp - 0xc06]
push ecx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov dx, word [0x10015d4]
mov word [ebp - 0x408], dx
push 0x3fe
push 0
lea eax, [ebp - 0x406]
push eax
call sub.MSVCR80.dll_memset
add esp, 0xc
mov cx, word [0x10015d4]
mov word [ebp - 0x1fb0], cx
push 0x7fe
push 0
lea edx, [ebp - 0x1fae]
push edx
call sub.MSVCR80.dll_memset
add esp, 0xc
mov dword [ebp - 0xc0c], 0
mov dword [ebp - 0x1fbc], 0
mov dword [ebp - 0x1fc0], 0
mov dword [ebp - 0xc10], 0
mov dword [ebp - 0x1fb8], 0
mov dword [ebp - 0x1ffc], 0
mov dword [ebp - 0x1fb4], 0
push 0x200
lea eax, [ebp - 0xc08]
push eax
push 7
mov ecx, dword [0x104ef34]
push ecx
call dword [sym.imp.USER32.dll_LoadStringW]
mov edx, dword [ebp + 0xc]
push edx
push 0x200
lea eax, [ebp - 0xc08]
push eax
call fcn.01010ee0
lea ecx, [ebp - 0xc08]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
call fcn.01010390
mov ecx, dword [0x104d280]
and ecx, 1
je 0x1016e22
movzx edx, word [0x104d080]
test edx, edx
je 0x1016e22
mov eax, dword [ebp + 0x18]
add eax, 4
push eax
push 0x104ce80
push 0xd1
push 0
push 3
call fcn.01028fb0
add esp, 0x14
lea ecx, [ebp - 0xfb0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.01017e70
add esp, 8
test eax, eax
je 0x1016e22
mov eax, dword [ebp + 8]
push eax
push 1
mov ecx, dword [ebp + 0x18]
add ecx, 4
push ecx
lea edx, [ebp - 0xfac]
push edx
push 0xc0000132
mov eax, dword [ebp - 0xfb0]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0xc]
push edx
push 0
push 0x104d080
push 1
call fcn.01028540
add esp, 0x2c
test eax, eax
je 0x1016e22
mov dword [ebp - 0xc0c], 1
mov eax, dword [0x104d280]
and eax, 2
je 0x1016f62
movzx ecx, word [0x104cf80]
test ecx, ecx
je 0x1016f62
mov edx, dword [ebp + 0x18]
add edx, 4
push edx
push 0x104ce80
push 0xd2
push 0
push 3
call fcn.01028fb0
add esp, 0x14
push 0x800
lea eax, [ebp - 0x1fb0]
push eax
push 0x104cf80
push 0x1002824
push 0x104d284
call fcn.01042360
add esp, 0x14
push eax
push 0x200
lea ecx, [ebp - 0x13b0]
push ecx
call fcn.01010390
push 0x800
lea edx, [ebp - 0x1fb0]
push edx
push 0x104cf80
push 0x1002824
push 0x104d384
call fcn.01042360
add esp, 0x14
push eax
push 0x200
lea eax, [ebp - 0x17b0]
push eax
call fcn.01010390
push 0x800
lea ecx, [ebp - 0x1fb0]
push ecx
mov edx, dword [ebp + 0xc]
push edx
push 0x1002818
push 0x104d484
call fcn.01042360
add esp, 0x14
push eax
push 0x200
lea eax, [ebp - 0x808]
push eax
call fcn.01010390
lea ecx, [ebp - 0xfb0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.01017e70
add esp, 8
test eax, eax
je 0x1016f62
mov eax, dword [ebp + 8]
push eax
push 1
mov ecx, dword [ebp + 0x18]
add ecx, 4
push ecx
lea edx, [ebp - 0xfac]
push edx
push 0xc0000133
mov eax, dword [ebp - 0xfb0]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
lea edx, [ebp - 0x808]
push edx
lea eax, [ebp - 0x17b0]
push eax
lea ecx, [ebp - 0x13b0]
push ecx
push 2
call fcn.01028540
add esp, 0x2c
test eax, eax
je 0x1016f62
mov dword [ebp - 0x1fbc], 1
mov edx, dword [0x104d280]
and edx, 4
je 0x10171b3
movzx eax, word [0x104d180]
test eax, eax
je 0x10171b3
mov ecx, dword [ebp + 0x18]
add ecx, 4
push ecx
push 0x104ce80
push 0xd3
push 0
push 3
call fcn.01028fb0
add esp, 0x14
push 0x93e
lea edx, [ebp - 0x1ff8]
push edx
push 8
call fcn.01011700
add esp, 0xc
mov dword [ebp - 0xc10], eax
cmp dword [ebp - 0xc10], 0
je 0x10171b3
push 0x104d180
call dword [sym.imp.MSVCR80.dll_wcslen]
add esp, 4
mov dword [ebp - 0x1fb4], eax
cmp dword [ebp - 0x1fb4], 0
je 0x1017032
push 0x940
lea eax, [ebp - 0x1ff8]
push eax
mov ecx, dword [ebp - 0x1fb4]
lea edx, [ecx + ecx + 2]
push edx
call fcn.01011700
add esp, 0xc
mov ecx, dword [ebp - 0xc10]
mov dword [ecx], eax
mov edx, dword [ebp - 0xc10]
cmp dword [edx], 0
je 0x1017032
push 0x104d180
mov eax, dword [ebp - 0x1fb4]
add eax, 1
push eax
mov ecx, dword [ebp - 0xc10]
mov edx, dword [ecx]
push edx
call fcn.01010390
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.MSVCR80.dll_wcslen]
add esp, 4
mov esi, eax
mov ecx, dword [ebp + 0x14]
push ecx
call dword [sym.imp.MSVCR80.dll_wcslen]
add esp, 4
lea edx, [esi + eax + 2]
cmp edx, 0x400
jae 0x101707d
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
push 0x100284c
push 0x400
lea edx, [ebp - 0x1fb0]
push edx
call fcn.01011d00
add esp, 0x14
jmp 0x1017092
mov eax, dword [ebp + 0xc]
push eax
push 0x400
lea ecx, [ebp - 0x1fb0]
push ecx
call fcn.01010390
lea edx, [ebp - 0x1fb0]
push edx
call dword [sym.imp.MSVCR80.dll_wcslen]
add esp, 4
mov dword [ebp - 0x1fb4], eax
cmp dword [ebp - 0x1fb4], 0
je 0x1017105
push 0x952
lea eax, [ebp - 0x1ff8]
push eax
mov ecx, dword [ebp - 0x1fb4]
lea edx, [ecx + ecx + 2]
push edx
call fcn.01011700
add esp, 0xc
mov ecx, dword [ebp - 0xc10]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0xc10]
cmp dword [edx + 4], 0
je 0x1017105
lea eax, [ebp - 0x1fb0]
push eax
mov ecx, dword [ebp - 0x1fb4]
add ecx, 1
push ecx
mov edx, dword [ebp - 0xc10]
mov eax, dword [edx + 4]
push eax
call fcn.01017240
push 0
push 0
mov ecx, dword [ebp - 0xc10]
push ecx
push 0x1029870
push 0
push 0
call dword [sym.imp.MSVCR80.dll__beginthreadex]
add esp, 0x18
mov dword [ebp - 0x2000], eax
cmp dword [ebp - 0x2000], 0
je 0x1017148
mov edx, dword [ebp - 0x2000]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x2000], 0
mov dword [ebp - 0x1fc0], 1
mov eax, dword [ebp + 0x18]
cmp dword [eax + 0x1e4], 0x37b9
je 0x10171b3
lea ecx, [ebp - 0xfb0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.01017e70
add esp, 8
test eax, eax
je 0x10171b3
push 0
lea eax, [ebp - 0x1ffc]
push eax
lea ecx, [ebp - 0x1fb8]
push ecx
call fcn.0102a6a0
add esp, 0xc
push 4
mov edx, dword [ebp - 0x1ffc]
push edx
mov eax, dword [ebp - 0x1fb8]
push eax
mov ecx, dword [ebp - 0xfb0]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0101b720
add esp, 0x14
cmp dword [ebp - 0xc0c], 0
jne 0x10171f1
cmp dword [ebp - 0x1fbc], 0
jne 0x10171f1
cmp dword [ebp - 0x1fc0], 0
jne 0x10171f1
mov eax, dword [ebp + 0x18]
add eax, 4
push eax
push 2
push 0x104ce80
push 2
push 4
push 0xc0000134
push 1
push 3
call fcn.010287e0
add esp, 0x20
cmp dword [ebp - 0xc0c], 0
jne 0x1017218
cmp dword [ebp - 0x1fbc], 0
jne 0x1017218
cmp dword [ebp - 0x1fc0], 0
jne 0x1017218
mov dword [ebp - 0x2004], 0
jmp 0x1017222
mov dword [ebp - 0x2004], 1
mov eax, dword [ebp - 0x2004]
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.010471ba
mov esp, ebp
pop ebp
ret