Function at 0x401080
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1010
call fcn.004190a0
mov eax, dword [0x424030]
xor eax, ebp
mov dword [ebp - 4], eax
mov ecx, dword [ebp + 0x10]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
lea edi, [ebp - 0xfe0]
mov dword [ebp - 0xfe0], 0
call fcn.00463105
lea eax, [ebp - 0xfd8]
push eax
call fcn.004062f1
lea ecx, [ebp - 0xfd8]
push ecx
mov ecx, esi
call fcn.00401a80
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, dword [ebp - 0xfe0]
push eax
lea ebx, [ebp - 0xfd8]
call fcn.0046b37e
test eax, eax
jne 0x401108
mov edx, ebx
push edx
call fcn.00401630
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040ee17
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0
push 0
push section..text
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x6d
push esi
mov dword [0x425e88], eax
call dword [sym.imp.USER32.dll_LoadAcceleratorsW]
mov dword [ebp - 0xff0], eax
lea eax, [ebp - 0x100c]
mov dword [ebp - 0x1010], eax
lea ecx, [ecx]
mov eax, dword [0x4260a4]
test eax, eax
je 0x4011a4
mov esi, dword [0x4260ac]
test esi, esi
je 0x4011a4
mov edx, dword [eax + 8]
mov ecx, edx
xor ecx, esi
mov dword [ebp - 0xfec], 0
cmp ecx, 0x100
jae 0x401340
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*2]
mov ecx, dword [eax + ecx*4 + 8]
xor ecx, edx
mov dword [ebp - 0xfdc], ecx
pushal
push 0
push 0
push 0
push dword [ebp - 0x1010]
call dword [ebp - 0xfdc]
mov dword [ebp - 0xfec], eax
popal
mov eax, dword [ebp - 0xfec]
jmp 0x4011b7
push 0
push 0
push 0
lea edx, [ebp - 0x100c]
push edx
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x401340
mov ecx, dword [ebp - 0x100c]
lea eax, [ebp - 0x100c]
mov dword [ebp - 0xfe4], eax
mov eax, dword [0x4260a4]
mov dword [ebp - 0xfe8], ecx
test eax, eax
je 0x40123d
mov esi, dword [0x4260b8]
test esi, esi
je 0x40123d
mov edx, dword [eax + 8]
mov ecx, edx
xor ecx, esi
mov dword [ebp - 0xfe0], 0
cmp ecx, 0x100
jae 0x40125f
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*2]
mov ecx, dword [eax + ecx*4 + 8]
xor ecx, edx
mov dword [ebp - 0xfdc], ecx
pushal
push dword [ebp - 0xfe4]
push dword [ebp - 0xff0]
push dword [ebp - 0xfe8]
call dword [ebp - 0xfdc]
mov dword [ebp - 0xfe0], eax
popal
mov eax, dword [ebp - 0xfe0]
jmp 0x401252
mov eax, dword [ebp - 0xff0]
lea edx, [ebp - 0x100c]
push edx
push eax
push ecx
call dword [sym.imp.USER32.dll_TranslateAcceleratorW]
test eax, eax
jne 0x401140
mov eax, dword [0x4260a4]
lea ecx, [ebp - 0x100c]
mov dword [ebp - 0xfe8], ecx
test eax, eax
je 0x4012ba
mov esi, dword [0x4260b0]
test esi, esi
je 0x4012ba
mov edx, dword [eax + 8]
mov ecx, edx
xor ecx, esi
mov dword [ebp - 0xfdc], 0
cmp ecx, 0x100
jae 0x4012cc
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*2]
mov ecx, dword [eax + ecx*4 + 8]
xor ecx, edx
mov dword [ebp - 0xfe4], ecx
pushal
push dword [ebp - 0xfe8]
call dword [ebp - 0xfe4]
mov dword [ebp - 0xfdc], eax
popal
jmp 0x4012c7
lea edx, [ebp - 0x100c]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
mov eax, dword [0x4260a4]
lea ecx, [ebp - 0x100c]
mov dword [ebp - 0xfe8], ecx
test eax, eax
je 0x40132e
mov esi, dword [0x4260c0]
test esi, esi
je 0x40132e
mov edx, dword [eax + 8]
mov ecx, edx
xor ecx, esi
mov dword [ebp - 0xfdc], 0
cmp ecx, 0x100
jae 0x401145
mov eax, dword [eax + 0x14]
lea ecx, [ecx + ecx*2]
mov ecx, dword [eax + ecx*4 + 8]
xor ecx, edx
mov dword [ebp - 0xfe4], ecx
pushal
push dword [ebp - 0xfe8]
call dword [ebp - 0xfe4]
mov dword [ebp - 0xfdc], eax
popal
jmp 0x401140
lea edx, [ebp - 0x100c]
push edx
call dword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x401140
mov esi, dword [ebp - 0x1004]
lea eax, [ebp - 0xfd8]
push eax
call fcn.00401630
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0040ee17
mov esp, ebp
pop ebp
ret 0x10