Function at 0x1003d94
Capabilities:
Create thread

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xac
mov eax, dword [0x1010b74]
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x88], eax
xor eax, eax
mov ecx, 0x2e5
mov edi, 0x1010bf0
rep stosd dword es:[edi], eax
mov edi, 0x80
push edi
mov esi, 0x1011604
push esi
xor ebx, ebx
push 0x2ee0
mov dword [ebp - 0x8c], ebx
call fcn.01001ea0
test eax, eax
jne 0x1003dea
mov word [0x1011604], bx
push ebx
push ebx
push edi
push 0x1011704
push 0xffffffffffffffff
push esi
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jne 0x1003e07
mov byte [0x1011704], bl
push 0x18
call sub.msvcrt.dll_void____cdecl_operator_new_unsigned_int_
cmp eax, ebx
pop ecx
je 0x1003e21
mov dword [eax], 0x1001a20
mov dword [eax + 4], ebx
mov dword [eax + 0x14], ebx
jmp 0x1003e23
xor eax, eax
cmp eax, ebx
mov dword [0x1010fcc], eax
je 0x100406b
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
push ebx
call dword [sym.imp.ole32.dll_OleInitialize]
test eax, eax
jl 0x100406b
push 0x1010f68
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_ProcessIdToSessionId]
test eax, eax
jne 0x1003e66
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x100406b
mov edi, dword [sym.imp.KERNEL32.dll_CreateEventW]
push ebx
push ebx
push ebx
push ebx
call edi
push ebx
push ebx
push ebx
push ebx
mov dword [0x1010fbc], eax
call edi
push ebx
push ebx
xor esi, esi
inc esi
push esi
push ebx
mov dword [0x1010fc0], eax
call edi
push ebx
push ebx
push esi
push ebx
mov dword [0x1010fc8], eax
call edi
cmp dword [0x1010fbc], ebx
mov dword [0x1010fc4], eax
je 0x100406b
cmp dword [0x1010fc0], ebx
je 0x100406b
cmp eax, ebx
je 0x100406b
cmp dword [0x1010fc8], ebx
je 0x100406b
push ebx
push ebx
push esi
push ebx
call edi
cmp eax, ebx
mov dword [0x1010f98], eax
je 0x1003e5b
push ebx
push ebx
push esi
push ebx
mov dword [0x1010fb4], eax
call edi
cmp eax, ebx
mov dword [0x1010f84], eax
je 0x1003e5b
mov esi, dword [sym.imp.msvcrt.dll_wcscpy]
lea eax, [ebp - 0x84]
push 0x1003ca4
push eax
call esi
pop ecx
pop ecx
lea eax, [ebp - 0x84]
push eax
push ebx
push ebx
push ebx
call edi
cmp eax, ebx
je 0x1003e5b
mov dword [0x1010fac], eax
lea eax, [ebp - 0x84]
push 0x1003ccc
push eax
call esi
pop ecx
pop ecx
lea eax, [ebp - 0x84]
push eax
push ebx
push ebx
push ebx
call edi
cmp eax, ebx
je 0x1003e5b
mov dword [0x1010fb0], eax
mov eax, dword [ebp - 0x88]
push 5
mov dword [0x10115f4], ebx
mov dword [0x1010bf4], ebx
mov dword [0x1010bf8], 0x10039bc
mov dword [0x1010bfc], ebx
mov dword [0x1010c00], ebx
mov dword [0x1010c04], eax
mov dword [0x1010c08], ebx
mov dword [0x1010c0c], ebx
call dword [sym.imp.GDI32.dll_GetStockObject]
push 0x1010bf4
mov dword [0x1010c10], eax
mov dword [0x1010c14], ebx
mov dword [0x1010c18], 0x1003cf0
call dword [sym.imp.USER32.dll_RegisterClassW]
cmp ax, bx
mov dword [ebp - 0x8c], eax
je 0x100406b
push ebx
push dword [ebp - 0x88]
push ebx
push ebx
push 0x64
push 0x64
push ebx
push ebx
push 0xcf0000
push 0x1003d10
push 0x1003d34
push ebx
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp eax, ebx
mov dword [0x1010bf0], eax
je 0x100406b
push 0x1003d54
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
cmp eax, ebx
mov dword [0x1010f50], eax
jne 0x1004006
mov dword [0x1010f50], 0x42a
xor esi, esi
inc esi
mov dword [0x1010c24], esi
call fcn.01001fec
lea eax, [ebp - 0x90]
push eax
push ebx
push ebx
push 0x10055ea
push ebx
push ebx
mov dword [0x1010f54], esi
call dword [sym.imp.KERNEL32.dll_CreateThread]
cmp eax, ebx
mov dword [0x1010f58], eax
je 0x100406b
mov esi, dword [sym.imp.USER32.dll_GetMessageW]
jmp 0x100405b
lea eax, [ebp - 0xac]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0xac]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
push ebx
push ebx
lea eax, [ebp - 0xac]
push ebx
push eax
call esi
test eax, eax
jne 0x1004041
call fcn.010020c2
mov eax, dword [0x1010bf0]
cmp eax, ebx
je 0x1004080
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
cmp word [ebp - 0x8c], bx
pop edi
pop esi
pop ebx
je 0x100409d
push dword [ebp - 0x88]
push 0x1003d70
call dword [sym.imp.USER32.dll_UnregisterClassW]
mov ecx, dword [ebp - 4]
xor eax, eax
call fcn.010090ab
leave
ret 4