Function at 0x100335e2
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x10058525
push eax
mov dword fs:[0], esp
sub esp, 0x8c
cmp byte [ebp + 8], 0
push ebx
push esi
mov esi, ecx
je 0x10033a0d
push dword [ebp + 0xc]
lea ecx, [esp + 0x50]
call fcn.10011a97
xor ebx, ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xc], 0xf2c29a3d
mov dword [esp + 0xc], ebx
jmp 0x10033644
mov eax, dword [esp + 0xc]
mov dword [esp + eax*4 + 0x18], 0xaf1124f0
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 1
jl 0x10033634
mov byte [esp + 0x22], bl
cmp byte [esp + 0x22], bl
je 0x10033663
push ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_TranslateMDISysAccel]
mov dword [esp + 0xc], ebx
jmp 0x10033777
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x10], 0x376fbfcc
mov dword [esp + 0x10], 0x56e623b2
mov dword [esp + 0x10], 1
mov dword [esp + 0x14], ebx
jmp 0x10033759
mov dword [esp + 0x10], 1
mov dword [esp + 0x10], 0xfffffff6
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
mov eax, dword [esp + eax*4 + 0x18]
cmp edx, eax
mov eax, dword [esp + 0x14]
setne cl
xor edx, edx
cmp ecx, eax
mov eax, dword [esp + 0xc]
setne dl
mov eax, dword [esp + eax*4 + 0x18]
sub edx, eax
mov eax, dword [esp + 0x18]
sub eax, edx
neg eax
sbb eax, eax
inc eax
sub eax, 0x3e8c
jne 0x100336fb
mov eax, dword [esp + 0xc]
cmp dword [esp + eax*4 + 0x18], ebx
jne 0x100336fb
mov edx, ebx
jmp 0x100336fe
xor edx, edx
inc edx
mov eax, dword [esp + 0xc]
xor ecx, ecx
cmp eax, edx
setne cl
add ecx, dword [esp + 0x18]
je 0x10033717
mov eax, dword [esp + 0xc]
mov eax, dword [esp + eax*4 + 0x18]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + eax*4 + 0x18]
mov eax, dword [esp + 0xc]
mov eax, dword [esp + eax*4 + 0x18]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], 1
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x18], ebx
jne 0x10033763
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ebx
jle 0x10033695
push ebx
lea edx, [esp + 0x18]
mov ecx, 0x562
call fcn.10034b80
inc dword [esp + 0x10]
pop ecx
cmp dword [esp + 0xc], ebx
jle 0x1003366c
push ecx
push dword [ebp + 0x14]
lea ecx, [esp + 0x54]
call fcn.10036620
mov dword [esp + 0x30], eax
cmp eax, 0xffffffff
je 0x10033832
mov dword [esp + 0x10], 0xffffffff
lea ecx, [esp + 0x78]
push 4
call fcn.10011bd7
push ecx
lea eax, [esp + 0x7c]
mov byte [esp + 0xa0], 1
push eax
lea eax, [esp + 0x7c]
mov dword [esp + 0x40], ebx
push eax
mov edx, 0x565d
mov ecx, 0x3671
call fcn.10034842
add esp, 0xc
lea eax, [esp + 0x38]
mov dl, 1
mov ecx, 0x4e8f
push eax
push 0x20a4
push ebx
push 0x49d2
push ebx
call fcn.10033dab
add esp, 0x14
mov byte [esp + 0x21], bl
lea edx, [esp + 0x21]
mov ecx, 0x50d1
push 0xc61
push ebx
call fcn.10034f33
pop ecx
pop ecx
lea ecx, [esp + 0x78]
mov byte [esp + 0x9c], bl
call fcn.10011c39
lea eax, [esp + 0x4c]
xor cl, cl
push eax
lea edx, [esp + 0x34]
call fcn.10033433
pop ecx
mov dword [esp + 0x2c], 2
lea ecx, [esp + 0x40]
push 1
call fcn.10011bd7
mov byte [esp + 0x9c], 2
mov dword [esp + 0x10], 0x97a61eef
mov dword [esp + 0x24], ebx
jmp 0x1003386e
mov eax, dword [esp + 0x24]
mov dword [esp + eax*4 + 0x84], 0xeac8b13e
inc dword [esp + 0x24]
cmp dword [esp + 0x24], 3
jl 0x1003385b
push ebx
lea eax, [esp + 0x44]
mov edx, 0x7dfd
push 0xa7f
push eax
lea ecx, [esp + 0x30]
call fcn.10032fe5
add esp, 0xc
mov dword [esp + 0x2c], 2
cmp dword [esp + 0x2c], ebx
jl 0x100338b2
mov eax, dword [esp + 0x2c]
cmp dword [esp + eax*4 + 0x84], ebx
jne 0x100338b2
dec dword [esp + 0x2c]
jns 0x1003389f
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x44]
push eax
push ecx
push ecx
call fcn.10032b49
add esp, 0x10
mov byte [esp + 0x9c], bl
lea ecx, [esp + 0x40]
call fcn.10011c39
push ecx
push dword [ebp + 0x14]
lea ecx, [esp + 0x54]
call fcn.1003659c
push ecx
mov dword [esp + 0x34], eax
lea eax, [esp + 0x50]
push ecx
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10036234
add esp, 0x10
lea ecx, [esp + 0x64]
push 4
call fcn.10011bd7
lea eax, [esp + 0x70]
mov byte [esp + 0x9c], 3
push eax
push 0x245c
lea eax, [esp + 0x6c]
mov dword [esp + 0x24], 0xfffffff9
push eax
mov dword [esp + 0x40], 0x8c7b5c6e
xor dl, dl
push 0x729b
mov ecx, 0x2138
call fcn.100334dd
add esp, 0x10
mov dword [esp + 0x1c], 3
cmp dword [esp + 0x1c], ebx
jl 0x10033985
lea eax, [esp + 0x23]
mov byte [esp + 0x23], bl
push eax
push ebx
mov edx, 0x7c81
xor cl, cl
call fcn.10035549
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x24]
pop ecx
pop ecx
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
dec dword [esp + 0x1c]
jns 0x1003394f
cmp dword [esp + 0x1c], ebx
je 0x100339c8
lea eax, [esp + 0x28]
mov dword [esp + 0x3c], 0xfffffff8
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x2c], 0x7e780ca9
push eax
lea eax, [esp + 0x44]
push eax
lea edx, [esp + 0x40]
call fcn.10032b2d
add esp, 0xc
mov dword [esp + 0x28], ebx
jmp 0x100339bf
call fcn.1003349a
inc dword [esp + 0x28]
cmp dword [esp + 0x28], 3
jle 0x100339b6
jmp 0x100339dc
push 0x5e42
push ebx
mov edx, 0x71c6
mov cl, 1
call fcn.10035549
pop ecx
pop ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0x9c], bl
call fcn.10011c39
lea eax, [esp + 0x4c]
cmp esi, eax
je 0x100339ff
push 0xffffffffffffffff
push ebx
push eax
mov ecx, esi
call fcn.10012477
push ebx
push 1
lea ecx, [esp + 0x54]
call fcn.100125a7
jmp 0x10033a2f
push 0x1149
xor ebx, ebx
push ebx
push ebx
push ebx
push ebx
push 0x114b
push 0x1106
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_ScrollWindowEx]
mov ecx, dword [esp + 0x94]
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret