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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
and esp, 0xfffffff8
sub esp, 0x110
mov eax, dword [ebp + 8]
mov dword [esp + 0x108], eax
cmp dword [0x10152154], 0
jne 0x1003739c
lea eax, [esp + 0xe8]
lea ecx, [0x10115d3c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0xe8]
call fcn.1002b920
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x54], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x100372fe
jmp 0x10037962
lea ecx, [esp + 0xe8]
call fcn.1002b850
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x104], ecx
mov eax, dword [esp + 0x104]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x104]
mov edx, dword [esp + 0xdc]
add eax, dword [edx + 0x3c]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0xd8]
movzx eax, word [eax + 0x40]
shl eax, 8
mov edx, dword [esp + 0xd8]
movzx edx, word [edx + 0x42]
or eax, edx
mov dword [0x10152154], eax
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, eax
sub esi, 1
imul eax, esi
and eax, 1
cmp eax, 0
sete bl
cmp edx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x10037397
jmp 0x10037962
jmp 0x1003739c
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x100373d8
jmp 0x100379c6
mov ecx, dword [esp + 0x108]
call fcn.1002b920
lea ecx, [0x1014c0cc]
mov edx, 0
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x50], edx
call fcn.100817e0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 1
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
or ah, bl
test ah, 1
mov byte [esp + 0x4f], al
jne 0x10037452
jmp 0x100379c6
mov al, byte [esp + 0x4f]
test al, 1
jne 0x10037463
jmp 0x10037519
cmp dword [0x10152154], 0x602
jae 0x100374c6
lea eax, [esp + 0xc0]
lea ecx, [0x101454f0]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0xc0]
call fcn.1002b920
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x10c], eax
lea ecx, [esp + 0xc0]
call fcn.1002b850
jmp 0x10037954
lea eax, [esp + 0xa8]
lea ecx, [0x10115d3c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0xa8]
call fcn.1002b920
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10c], eax
lea ecx, [esp + 0xa8]
call fcn.1002b850
jmp 0x10037954
mov ecx, dword [esp + 0x108]
call fcn.1002b920
lea ecx, [0x1010d50c]
mov edx, 0
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x40], edx
call fcn.100817e0
test al, 1
jne 0x1003759c
mov ecx, dword [esp + 0x108]
call fcn.1002b920
lea ecx, [0x1014c128]
mov edx, 0
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x3c], edx
call fcn.100817e0
test al, 1
jne 0x1003759c
jmp 0x100376cc
cmp dword [0x10152154], 0x603
jae 0x10037682
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x100375e8
jmp 0x10037a06
lea eax, [esp + 0x90]
lea ecx, [0x10146748]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0x90]
call fcn.1002b920
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 1
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
or bl, bh
test bl, 1
mov dword [esp + 0x38], eax
jne 0x10037650
jmp 0x10037a06
mov eax, esp
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10c], eax
lea ecx, [esp + 0x90]
call fcn.1002b850
jmp 0x10037954
lea eax, [esp + 0x78]
lea ecx, [0x10111470]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0x78]
call fcn.1002b920
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10c], eax
lea ecx, [esp + 0x78]
call fcn.1002b850
jmp 0x10037954
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x10037708
jmp 0x10037a34
lea eax, [0x1013f0d8]
mov dword [esp + 0x74], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x1003774e
jmp 0x10037a34
jmp 0x10037753
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x1003778f
jmp 0x10037a43
mov eax, dword [esp + 0x74]
cmp dword [eax], 0
setne cl
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, eax
sub esi, 1
imul eax, esi
and eax, 1
cmp eax, 0
sete ch
cmp edx, 0xa
setl bl
or ch, bl
test ch, 1
mov byte [esp + 0x2f], cl
jne 0x100377dc
jmp 0x10037a43
mov al, byte [esp + 0x2f]
test al, 1
jne 0x100377ed
jmp 0x100378cc
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 4]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x70]
cmp dword [eax], 0
je 0x100378b5
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x28], eax
call fcn.1002b920
mov ecx, 0
mov dword [esp], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x24], ecx
call fcn.100817e0
test al, 1
jne 0x10037854
jmp 0x1003789e
lea eax, [esp + 0x58]
mov ecx, dword [esp + 0x74]
mov ecx, dword [ecx]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0x58]
call fcn.1002b920
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
call eax
sub esp, 4
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x10c], eax
lea ecx, [esp + 0x58]
call fcn.1002b850
jmp 0x10037954
jmp 0x100378a3
mov eax, dword [esp + 0x70]
add eax, 4
mov dword [esp + 0x70], eax
jmp 0x100377f8
jmp 0x100378ba
mov eax, dword [esp + 0x74]
add eax, 8
mov dword [esp + 0x74], eax
jmp 0x10037753
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x10037908
jmp 0x10037a48
mov dword [esp + 0x10c], 0
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 1
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
or bl, bh
test bl, 1
jne 0x1003794f
jmp 0x10037a48
jmp 0x10037954
mov eax, dword [esp + 0x10c]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
lea ecx, [esp + 0xe8]
call fcn.1002b850
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x104], ecx
mov eax, dword [esp + 0x104]
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x104]
mov edx, dword [esp + 0xdc]
mov edx, dword [edx + 0x3c]
add eax, edx
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0xd8]
movzx eax, word [eax + 0x40]
shl eax, 8
mov edx, dword [esp + 0xd8]
movzx edx, word [edx + 0x42]
or eax, edx
mov dword [0x10152154], eax
jmp 0x100372fe
mov ecx, dword [esp + 0x108]
call fcn.1002b920
lea ecx, [0x1014c0cc]
mov edx, 0
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x1c], edx
call fcn.100817e0
mov byte [esp + 0x1b], al
jmp 0x100373d8
lea eax, [esp + 0x90]
lea ecx, [0x10146748]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.10065f00
lea ecx, [esp + 0x90]
call fcn.1002b920
mov dword [esp + 0x14], eax
jmp 0x100375e8
lea eax, [0x1013f0d8]
mov dword [esp + 0x74], eax
jmp 0x10037708
jmp 0x1003778f
mov dword [esp + 0x10c], 0
jmp 0x10037908