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

Disassembly:
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
sub rsp, 0x78
mov dword [rsp + 0x24], 0x573c
mov dword [rsp + 0x28], 0x8246
mov dword [rsp + 0x2c], 0x8457
mov dword [rsp + 0x20], 0x3cad
mov eax, dword [rsp + 0x20]
cmp dword [0x140038b3c], eax
jb 0x140002b4e
mov eax, dword [rsp + 0x2c]
cmp dword [0x140038bb8], eax
je 0x140002b61
mov eax, dword [rsp + 0x80]
cmp dword [0x140038c38], eax
ja 0x140003571
mov eax, dword [0x140038c04]
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 0xffffd9c5
je 0x140002ba4
cmp dword [rsp + 0x30], 0x308b
je 0x140003248
cmp dword [rsp + 0x30], 0xe677
je 0x1400032a0
cmp dword [rsp + 0x30], 0x12aa0
je 0x14000340f
jmp 0x140003571
mov edx, dword [rsp + 0x80]
mov ecx, dword [rsp + 0x80]
call fcn.140001f30
mov eax, dword [rsp + 0x98]
cdq
idiv dword [rsp + 0x88]
mov ecx, dword [rsp + 0x2c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x98]
imul ecx, dword [rsp + 0x20]
mov edx, dword [rsp + 0x90]
sub edx, ecx
mov ecx, edx
or eax, ecx
mov dword [0x140038b3c], eax
mov eax, 0x6a00
cdq
idiv dword [rsp + 0x88]
imul eax, dword [rsp + 0x24]
xor edx, edx
div dword [rsp + 0x24]
mov eax, edx
sub eax, dword [rsp + 0x98]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x80]
imul eax, dword [rsp + 0x90]
mov dword [rsp + 0x3c], eax
xor edx, edx
mov eax, dword [rsp + 0x80]
div dword [rsp + 0x28]
mov eax, edx
mov ecx, dword [rsp + 0x3c]
sub ecx, eax
mov eax, ecx
add eax, 0x1537a
mov dword [rsp + 0x88], eax
call fcn.140006000
cmp eax, dword [0x140038b4c]
jbe 0x140002d2b
xor edx, edx
mov eax, dword [rsp + 0x20]
mov ecx, 0xfdfb
div ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x98]
cdq
idiv dword [rsp + 0x88]
mov eax, edx
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
sub eax, dword [rsp + 0x88]
sub eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x20]
shr eax, cl
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x88]
imul eax, dword [rsp + 0x88]
cdq
idiv dword [rsp + 0x88]
mov dword [rsp + 0x24], eax
imul eax, dword [rsp + 0x20], 0xb94f
imul eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x28]
imul ecx, dword [rsp + 0x24]
sub eax, ecx
sub eax, dword [rsp + 0x80]
mov dword [rsp + 0x88], eax
mov eax, dword [rsp + 0x80]
sub eax, 0x273f
mov dword [rsp + 0x24], eax
xor edx, edx
mov eax, dword [rsp + 0x24]
div dword [rsp + 0x88]
mov eax, edx
add eax, dword [rsp + 0x2c]
add eax, dword [rsp + 0x20]
mov dword [0x140038bec], eax
jmp 0x140003248
mov eax, dword [0x140038c38]
cmp dword [rsp + 0x90], eax
je 0x140003248
mov eax, dword [0x140038c44]
cmp dword [rsp + 0x2c], eax
jbe 0x140002d8c
mov r8d, dword [rsp + 0x88]
mov edx, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x24]
call fcn.140003f10
cmp eax, dword [0x140038cac]
jne 0x140002d8c
mov ecx, dword [rsp + 0x98]
call fcn.140003690
cmp eax, dword [0x140038c40]
je 0x140002d8c
call fcn.1400076f0
cmp dword [0x140038b4c], eax
jae 0x140002f65
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24], eax
xor edx, edx
mov eax, dword [rsp + 0x90]
div dword [rsp + 0x88]
mov dword [rsp + 0x28], eax
mov r9d, dword [rsp + 0x98]
mov r8d, dword [rsp + 0x24]
mov edx, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x90]
call qword [sym.imp.KERNEL32.dll_FindResourceExA]
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x2c]
imul eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x98]
mov dword [rsp + 0x44], eax
xor edx, edx
mov eax, dword [rsp + 0x24]
div dword [rsp + 0x88]
mov ecx, dword [rsp + 0x90]
sub ecx, eax
mov eax, ecx
movzx ecx, al
mov eax, dword [rsp + 0x44]
shl eax, cl
mov dword [0x140038c04], eax
mov ecx, dword [rsp + 0x2c]
call qword [sym.imp.USER32.dll_IsWindow]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x28]
sub ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x2c]
sub eax, dword [rsp + 0x28]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x24]
lea eax, [rax + rcx + 0x1274a]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x28]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x2c]
imul eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x2c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x98]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x48], eax
xor edx, edx
mov eax, dword [rsp + 0x24]
mov ecx, 0xeba9
div ecx
mov eax, edx
xor edx, edx
div dword [rsp + 0x28]
mov ecx, dword [rsp + 0x48]
sub ecx, eax
mov eax, ecx
mov dword [0x140038b68], eax
mov eax, dword [rsp + 0x20]
imul eax, dword [rsp + 0x88]
mov dword [0x140038c38], eax
mov eax, dword [rsp + 0x98]
cmp dword [0x140038c44], eax
ja 0x140002d94
mov eax, dword [rsp + 0x28]
mov ecx, 0x73bc
mov dword [rsp + 0x4c], ecx
movzx ecx, al
mov eax, dword [rsp + 0x4c]
sar eax, cl
mov dword [rsp + 0x80], eax
imul eax, dword [rsp + 0x80], 0x2b21
add eax, dword [rsp + 0x2c]
mov dword [rsp + 0x50], eax
mov eax, 0x16afe
cdq
idiv dword [rsp + 0x88]
mov ecx, dword [rsp + 0x50]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x20]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x90]
cmp dword [0x140038bec], eax
je 0x140002d8c
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x80]
sub ecx, eax
mov eax, ecx
and eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x2c]
mov edx, dword [rsp + 0x20]
sub edx, ecx
mov ecx, edx
and eax, ecx
mov dword [rsp + 0x80], eax
jmp 0x140003248
mov eax, dword [rsp + 0x2c]
cmp dword [0x140038c04], eax
jl 0x140003084
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x28]
sub eax, dword [rsp + 0x90]
mov dword [rsp + 0x98], eax
mov r8d, 0x1aba3
mov edx, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x28]
call qword [sym.imp.GDI32.dll_GdiComment]
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x80]
imul eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x88]
mov edx, dword [rsp + 0x98]
add edx, ecx
mov ecx, edx
shr eax, cl
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x98]
cdq
mov ecx, 0x11da6
idiv ecx
mov eax, edx
movzx ecx, al
mov eax, dword [rsp + 0x54]
shl eax, cl
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
mov dword [0x140038b4c], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x28]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x90]
movzx ecx, al
mov eax, dword [rsp + 0x28]
shl eax, cl
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
mov edx, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x20]
call qword [sym.imp.USER32.dll_EnableWindow]
mov dword [rsp + 0x98], eax
mov r8d, dword [rsp + 0x2c]
mov edx, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x80]
call fcn.140003ad0
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
and eax, 0xe31d
mov dword [rsp + 0x20], eax
jmp 0x140003248
mov eax, dword [rsp + 0x20]
imul eax, dword [rsp + 0x88]
imul eax, dword [rsp + 0x24]
xor edx, edx
div dword [rsp + 0x20]
mov ecx, dword [rsp + 0x88]
lea eax, [rax + rcx - 0x454e]
mov dword [0x140038bb8], eax
mov eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x90]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x98]
mov edx, dword [rsp + 0x88]
sub edx, ecx
mov ecx, edx
or eax, ecx
mov dword [rsp + 0x2c], eax
xor edx, edx
mov eax, dword [rsp + 0x88]
div dword [rsp + 0x20]
add eax, dword [rsp + 0x98]
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x28]
lea eax, [rax + rcx + 0xdad]
movzx ecx, al
mov eax, dword [rsp + 0x88]
sar eax, cl
mov dword [rsp + 0x90], eax
mov eax, dword [0x140038bec]
mov dword [rsp + 0x34], eax
jmp 0x14000312c
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
mov eax, dword [rsp + 0x20]
cmp dword [rsp + 0x34], eax
jbe 0x140003228
imul eax, dword [rsp + 0x24], 0x111b4
xor edx, edx
div dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x88]
cdq
idiv dword [rsp + 0x98]
mov eax, edx
imul eax, dword [rsp + 0x98]
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x88]
cdq
mov ecx, 0x70dd
idiv ecx
mov ecx, dword [rsp + 0x58]
lea eax, [rcx + rax + 0x11ac]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x28]
imul eax, dword [rsp + 0x24]
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
imul eax, dword [rsp + 0x24]
imul eax, eax, 0xa3fe
mov dword [rsp + 0x24], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x2c]
sub ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x98]
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x98]
mov ecx, dword [rsp + 0x90]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x28]
imul eax, dword [rsp + 0x24]
sub eax, dword [rsp + 0x28]
mov ecx, dword [rsp + 0x80]
mov edx, dword [rsp + 0x20]
add edx, ecx
mov ecx, edx
and eax, ecx
mov dword [rsp + 0x98], eax
jmp 0x140003122
mov eax, dword [rsp + 0x20]
cmp dword [0x140038b4c], eax
jb 0x1400030d9
mov eax, dword [0x140038b6c]
cmp dword [rsp + 0x28], eax
je 0x140003084
mov eax, dword [0x140038cf8]
mov dword [rsp + 0x38], eax
jmp 0x14000325e
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x20]
cmp dword [rsp + 0x38], eax
jae 0x1400032a0
mov eax, dword [rsp + 0x20]
imul eax, dword [rsp + 0x98]
mov dword [rsp + 0x5c], eax
xor edx, edx
mov eax, dword [rsp + 0x90]
div dword [rsp + 0x90]
mov eax, edx
mov ecx, dword [rsp + 0x5c]
sub ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x20]
sub eax, dword [rsp + 0x24]
mov dword [rsp + 0x20], eax
jmp 0x140003254
mov eax, 0x236c
cdq
idiv dword [rsp + 0x80]
mov dword [rsp + 0x20], eax
imul eax, dword [rsp + 0x98], 0x70b5
mov ecx, dword [rsp + 0x2c]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
xor edx, edx
mov eax, 0x9235
div dword [rsp + 0x20]
mov eax, edx
mov dword [rsp + 0x60], eax
mov eax, 0x10c5f
cdq
idiv dword [rsp + 0x80]
xor edx, edx
div dword [rsp + 0x24]
mov ecx, dword [rsp + 0x60]
or ecx, eax
mov eax, ecx
mov dword [rsp + 0x24], eax
xor edx, edx
mov eax, dword [rsp + 0x90]
div dword [rsp + 0x80]
mov eax, edx
mov ecx, dword [rsp + 0x24]
add ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x98]
add ecx, 0x12aec
or eax, ecx
mov dword [rsp + 0x98], eax
mov eax, dword [rsp + 0x20]
mov ecx, dword [rsp + 0x90]
sub ecx, eax
mov eax, ecx
mov ecx, 0x752c
sub ecx, dword [rsp + 0x24]
add ecx, dword [rsp + 0x88]
shr eax, cl
mov dword [rsp + 0x24], eax
xor edx, edx
mov eax, dword [rsp + 0x2c]
div dword [rsp + 0x20]
mov ecx, dword [rsp + 0x88]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x64], eax
xor edx, edx
mov eax, dword [rsp + 0x90]
div dword [rsp + 0x20]
mov eax, edx
mov ecx, dword [rsp + 0x64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x90], eax
mov eax, dword [rsp + 0x88]
imul eax, dword [rsp + 0x2c]
mov dword [rsp + 0x88], eax
mov dword [rsp + 0x28], 0x2392
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
call fcn.1400026e0
mov eax, dword [rsp + 0x90]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
add eax, dword [rsp + 0x2c]
mov dword [rsp + 0x98], eax
mov eax, dword [0x140038b4c]
cmp dword [rsp + 0x2c], eax
jae 0x140003328
mov eax, dword [rsp + 0x98]
cmp dword [0x140038c48], eax
jl 0x1400032a0
mov ecx, dword [rsp + 0x24]
call fcn.140001350
mov eax, dword [rsp + 0x90]
or eax, 0x1144b
mov dword [0x140038b6c], eax
jmp 0x140003571
xor edx, edx
mov eax, dword [rsp + 0x88]
div dword [rsp + 0x24]
movzx ecx, al
mov eax, dword [rsp + 0x90]
shr eax, cl
mov dword [rsp + 0x80], eax
mov dword [rsp + 0x28], 0x847f
mov eax, dword [rsp + 0x98]
imul eax, dword [rsp + 0x20]
add eax, 0x18e08
mov ecx, dword [rsp + 0x80]
shr eax, cl
and eax, dword [rsp + 0x90]
mov dword [0x140038b4c], eax
mov eax, dword [rsp + 0x20]
imul eax, dword [rsp + 0x20]
xor edx, edx
div dword [rsp + 0x88]
sub eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x2c]
mov edx, dword [rsp + 0x20]
sub edx, ecx
mov ecx, edx
and eax, ecx
mov dword [rsp + 0x98], eax
mov edx, dword [rsp + 0x2c]
mov ecx, dword [rsp + 0x88]
call fcn.140001410
mov eax, dword [rsp + 0x2c]
imul eax, dword [rsp + 0x2c]
mov dword [rsp + 0x68], eax
xor edx, edx
mov eax, dword [rsp + 0x98]
div dword [rsp + 0x90]
mov eax, edx
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
or eax, dword [rsp + 0x28]
or eax, dword [rsp + 0x20]
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
imul eax, dword [rsp + 0x24]
mov ecx, dword [rsp + 0x98]
imul ecx, dword [rsp + 0x20]
mov edx, dword [rsp + 0x98]
imul edx, dword [rsp + 0x20]
sub ecx, edx
or eax, ecx
mov dword [rsp + 0x90], eax
mov eax, dword [0x140038c44]
cmp dword [rsp + 0x20], eax
ja 0x14000342f
xor edx, edx
mov eax, dword [rsp + 0x20]
div dword [rsp + 0x28]
mov eax, edx
sub eax, dword [rsp + 0x80]
sub eax, dword [rsp + 0x90]
add eax, dword [rsp + 0x80]
mov dword [rsp + 0x24], eax
mov eax, dword [0x140038b3c]
cmp dword [rsp + 0x98], eax
jge 0x14000340f
mov eax, dword [rsp + 0x80]
cdq
idiv dword [rsp + 0x88]
mov eax, edx
sub eax, dword [rsp + 0x88]
mov ecx, dword [rsp + 0x24]
mov edx, dword [rsp + 0x28]
add edx, ecx
mov ecx, edx
add ecx, dword [rsp + 0x2c]
shl eax, cl
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x80]
add rsp, 0x78
ret