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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x13c
mov ebp, dword [esp + 0x15c]
call fcn.1003ddac
xor ebx, ebx
push ebx
push eax
call fcn.1003b692
add esp, 8
mov esi, esp
mov dword [esi], eax
call fcn.1003ddac
push ebx
push eax
call fcn.1003b692
add esp, 8
lea edi, [esp + 0x134]
mov dword [esp + 0xc], eax
mov ecx, edi
push 1
push ebp
call fcn.100a7850
mov ebp, dword [edi + 4]
mov ecx, edi
call fcn.100b1996
mov edi, eax
call fcn.1003c9cc
push ebp
push ebx
push eax
push edi
call fcn.1003be3a
add esp, 0x10
lea ebx, [esp + 0xe0]
push eax
push ebx
call fcn.1003cf8c
add esp, 8
lea eax, [esp + 4]
mov ecx, esi
push dword [ebx]
push eax
call fcn.1003defe
mov eax, dword [esp + 0x150]
mov al, byte [eax + 9]
cmp al, 0x16
jg 0x10154a68
mov ecx, eax
add cl, 0xee
cmp cl, 2
jae 0x10154e1a
lea ebx, [esp + 0x12c]
mov ecx, ebx
push 1
push dword [esp + 0x15c]
call fcn.100a7850
mov esi, dword [ebx + 4]
mov ecx, ebx
call fcn.100b1996
mov ebx, eax
call fcn.1003c9cc
push esi
push 0
push eax
push ebx
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xdc]
push eax
push esi
call fcn.1003cf8c
add esp, 8
jmp 0x10154ac3
cmp al, 0x17
je 0x10154acb
cmp al, 0x1b
je 0x10154acb
cmp al, 0x2d
jne 0x10154b38
lea ebx, [esp + 0x11c]
mov ecx, ebx
push 1
push dword [esp + 0x15c]
call fcn.100a78e6
mov esi, dword [ebx + 4]
mov ecx, ebx
call fcn.100b19e4
mov ebx, eax
call fcn.1003ddac
push esi
push 0
push eax
push ebx
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xd0]
push 0xc6
push eax
push esi
call fcn.1003dc55
add esp, 0xc
lea ecx, [esp + 0xc]
push dword [esi]
jmp 0x10154b2e
lea ebx, [esp + 0x124]
mov ecx, ebx
push 1
push dword [esp + 0x15c]
call fcn.100a7850
mov esi, dword [ebx + 4]
mov ecx, ebx
call fcn.100b1996
mov ebx, eax
call fcn.1003c9cc
push esi
push 0
push eax
push ebx
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xd4]
push eax
push esi
call fcn.1003cf8c
add esp, 8
lea ebx, [esp + 0xd8]
push 0xc6
push dword [esi]
push ebx
call fcn.1003dc55
add esp, 0xc
lea ecx, [esp + 0xc]
push dword [ebx]
lea eax, [esp + 8]
push eax
call fcn.1003defe
mov edi, esp
lea ebx, [esp + 0x90]
push edi
push ebx
call fcn.100e25e5
add esp, 8
mov esi, 9
lea ebp, [esp + 0x94]
push esi
push dword [ebx]
push ebp
call fcn.1003d2a9
add esp, 0xc
mov ebx, dword [ebp]
call fcn.1003ddac
push eax
push ebx
call fcn.1003c15c
add esp, 8
mov ecx, edi
push eax
lea eax, [esp + 8]
push eax
call fcn.1003defe
lea edi, [esp + 0xc]
lea ebx, [esp + 0x88]
push edi
push ebx
call fcn.100e25e5
add esp, 8
lea ebp, [esp + 0x8c]
push esi
push dword [ebx]
push ebp
call fcn.1003d2a9
add esp, 0xc
mov esi, dword [ebp]
call fcn.1003ddac
push eax
push esi
call fcn.1003c15c
add esp, 8
mov ecx, edi
push eax
lea eax, [esp + 8]
push eax
call fcn.1003defe
xor ebx, ebx
xor eax, eax
lea ecx, [esp + 8]
dec eax
mov esi, ecx
push ebx
push eax
push eax
push eax
call fcn.1003ddb2
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esi]
call fcn.1003be3a
add esp, 0x10
mov ebp, eax
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x80]
push 0xff
push eax
push esi
call fcn.1003dc55
add esp, 0xc
lea edi, [esp + 0x84]
push ebp
push dword [esi]
push edi
call fcn.1003c798
add esp, 0xc
lea ebp, [esp + 4]
mov ecx, ebp
push dword [edi]
call fcn.1003de44
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [ebp]
call fcn.1003be3a
add esp, 0x10
mov ebp, eax
call fcn.1003ddac
push ebx
push ebx
push eax
lea eax, [esp + 0x18]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x78]
push esi
push eax
push edi
call fcn.1003cc42
add esp, 0xc
lea esi, [esp + 0x7c]
push ebp
push dword [edi]
push esi
call fcn.1003dff1
add esp, 0xc
mov edi, esp
mov ecx, edi
push dword [esi]
lea ebp, [esp + 0xc]
push ebp
call fcn.1003defe
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x74]
push 7
push eax
push esi
call fcn.1003d277
add esp, 0xc
mov ecx, edi
push dword [esi]
push ebp
call fcn.1003defe
call fcn.1003ddac
push ebx
push ebx
push eax
lea eax, [esp + 0x18]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x70]
push esi
push eax
push edi
call fcn.1003cc25
add esp, 0xc
mov ecx, esp
push dword [edi]
push ebp
call fcn.1003defe
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
mov esi, eax
call fcn.1003ddac
push ebx
push ebx
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x6c]
push esi
push eax
push edi
call fcn.1003cc25
add esp, 0xc
mov ecx, esp
push dword [edi]
mov edi, ebp
push ebp
call fcn.1003defe
mov eax, dword [esp + 0x150]
mov al, byte [eax + 8]
add al, 0xf1
cmp al, 0xe
ja case.0x10154d7a.239
movzx eax, al
jmp dword [eax*4 + 0x101e3bac]
call fcn.1003ddac
mov ebx, esp
xor ecx, ecx
push ecx
push ecx
xor ebp, ebp
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x64]
push 0xc6
push eax
push esi
call fcn.1003dc55
add esp, 0xc
mov ecx, ebx
push dword [esi]
push edi
call fcn.1003defe
call fcn.1003ddac
push ebp
push ebp
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
call fcn.1003ddac
push ebp
push ebp
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x60]
push edi
push eax
push esi
call fcn.1003e771
add esp, 0xc
lea edi, [esp + 8]
mov ecx, edi
push dword [esi]
call fcn.1003c98e
call fcn.1003c9cc
xor ecx, ecx
push ecx
push ecx
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
lea ebx, [esp + 0x104]
jmp 0x1015511b
cmp al, 0xf
jne 0x10154b38
xor eax, eax
lea ebx, [esp + 0x114]
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x15c]
call fcn.100a7798
mov esi, dword [ebx + 4]
mov ecx, ebx
call fcn.100b18fa
mov ebx, eax
call fcn.1003c8c6
xor ebp, ebp
push esi
push ebp
push eax
push ebx
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 4]
mov ecx, edi
push eax
call fcn.1003cdf6
push 0x1c
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esp + 0x10]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xc8]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
push 2
call fcn.1003c0ec
add esp, 4
lea ecx, [esp + 0x20]
push eax
push dword [esi]
push ecx
call fcn.1003f8bd
add esp, 0xc
push 0x600
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esp + 0x10]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xc0]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
xor eax, eax
inc eax
push eax
call fcn.1003c0ec
add esp, 4
lea ecx, [esp + 0x1c]
push eax
push dword [esi]
push ecx
call fcn.1003f8bd
add esp, 0xc
push 0x7e0
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esp + 0x10]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xb8]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
push 5
call fcn.1003c0ec
add esp, 4
lea ecx, [esp + 0x18]
push eax
push dword [esi]
push ecx
call fcn.1003f89d
add esp, 0xc
push 0xe01f
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esp + 0x10]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xac]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
push 3
call fcn.1003c0ec
add esp, 4
lea edi, [esp + 0xb0]
push eax
push dword [esi]
push edi
call fcn.1003f89d
add esp, 0xc
push 0xf800
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esp + 0x10]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0xa0]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
push 8
call fcn.1003c0ec
add esp, 4
lea ebx, [esp + 0xa4]
push eax
push dword [esi]
push ebx
call fcn.1003f89d
add esp, 0xc
push 0xff000000
call fcn.1003c0ec
add esp, 4
lea esi, [esp + 0xa8]
push dword [ebx]
push eax
push esi
call fcn.1003c7b8
add esp, 0xc
lea ebx, [esp + 0xb4]
push dword [edi]
push dword [esi]
push ebx
call fcn.1003c7b8
add esp, 0xc
lea eax, [esp + 0x18]
lea esi, [esp + 0xbc]
push dword [eax]
push dword [ebx]
push esi
call fcn.1003c7b8
add esp, 0xc
lea eax, [esp + 0x1c]
lea ebx, [esp + 0xc4]
push dword [eax]
push dword [esi]
push ebx
call fcn.1003c7b8
add esp, 0xc
lea eax, [esp + 0x20]
lea esi, [esp + 0xcc]
push dword [eax]
push dword [ebx]
push esi
call fcn.1003c7b8
add esp, 0xc
lea edi, [esp + 4]
lea ebx, [esp + 8]
mov ecx, edi
push dword [esi]
push ebx
call fcn.1003f6c4
lea esi, [esp + 0x98]
push edi
push esi
call fcn.10118a73
add esp, 8
lea ebp, [esp + 0x9c]
push dword [esi]
push ebp
call fcn.1003cf8c
add esp, 8
lea ecx, [esp + 0xc]
push dword [ebp]
push ebx
jmp 0x10154b33
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor esi, esi
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
call fcn.1003ddac
push esi
push esi
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x68]
push edi
push eax
push esi
call fcn.1003e771
add esp, 0xc
lea edi, [esp + 8]
mov ecx, edi
push dword [esi]
call fcn.1003c98e
call fcn.1003c9cc
xor ecx, ecx
push ecx
push ecx
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
lea ebx, [esp + 0x10c]
mov ecx, ebx
push 1
push dword [esp + 0x158]
call fcn.100a7850
mov ebp, dword [ebx + 4]
mov ecx, ebx
call fcn.100b1996
mov esi, eax
call fcn.1003c9cc
push ebp
xor ecx, ecx
push ecx
push eax
push esi
push edi
call fcn.1003bfc4
add esp, 0x14
add esp, 0x13c
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor ebp, ebp
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
call fcn.1003ddac
push ebp
push ebp
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x5c]
push edi
push eax
push esi
call fcn.1003e771
add esp, 0xc
mov esi, dword [esi]
call fcn.1003fe44
push eax
push esi
call fcn.1003c15c
add esp, 8
lea ecx, [esp + 8]
mov esi, ecx
push eax
call fcn.1003f668
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esi]
call fcn.1003be3a
add esp, 0x10
mov ebx, eax
push ebp
call fcn.1003c0ec
add esp, 4
lea esi, [esp + 0x58]
push eax
push ebx
push esi
call fcn.1003f8bd
add esp, 0xc
lea ebx, [esp + 0x10]
mov ecx, ebx
push dword [esi]
call fcn.1003c7dc
call fcn.1003c81e
xor ecx, ecx
push ecx
push ecx
xor edi, edi
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
mov ecx, dword [esp + 0x154]
mov ebx, eax
call fcn.100b1880
lea esi, [esp + 0x54]
push edi
push eax
push esi
call fcn.10042ef9
add esp, 0xc
lea ebp, [esp + 0xfc]
mov ecx, ebp
push dword [esi]
call fcn.100a78ac
mov esi, dword [ebp + 4]
mov ecx, ebp
call fcn.100b1880
mov ebp, eax
call fcn.1003c81e
push esi
push edi
push eax
push ebp
push ebx
call fcn.1003bfc4
add esp, 0x14
call fcn.1003b794
push edi
push edi
push eax
lea eax, [esp + 0x14]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov ebx, eax
push 8
call fcn.1003c0ec
add esp, 4
lea esi, [esp + 0x50]
push eax
push ebx
push esi
call fcn.1003f8bd
add esp, 0xc
lea ebx, [esp + 0x10]
mov ecx, ebx
push dword [esi]
call fcn.1003c7dc
call fcn.1003c81e
xor ecx, ecx
push ecx
push ecx
xor edi, edi
push eax
push dword [ebx]
call fcn.1003be3a
add esp, 0x10
mov ecx, dword [esp + 0x154]
mov ebx, eax
call fcn.100b1880
lea esi, [esp + 0x4c]
push 1
push eax
push esi
call fcn.10042ef9
add esp, 0xc
lea ebp, [esp + 0xf4]
mov ecx, ebp
push dword [esi]
call fcn.100a78ac
mov esi, dword [ebp + 4]
mov ecx, ebp
call fcn.100b1880
mov ebp, eax
call fcn.1003c81e
push esi
push edi
push eax
push ebp
push ebx
call fcn.1003bfc4
add esp, 0x14
call fcn.1003b794
push edi
push edi
push eax
lea eax, [esp + 0x14]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
push 0x10
call fcn.1003c0ec
add esp, 4
lea esi, [esp + 0x48]
push eax
push edi
push esi
call fcn.1003f8bd
add esp, 0xc
lea edi, [esp + 0x10]
mov ecx, edi
push dword [esi]
call fcn.1003c7dc
call fcn.1003c81e
xor ecx, ecx
push ecx
push ecx
xor ebp, ebp
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov ecx, dword [esp + 0x154]
mov edi, eax
call fcn.100b1880
lea ebx, [esp + 0x44]
push 2
push eax
push ebx
call fcn.10042ef9
add esp, 0xc
lea esi, [esp + 0xec]
mov ecx, esi
push dword [ebx]
call fcn.100a78ac
mov ebx, dword [esi + 4]
mov ecx, esi
call fcn.100b1880
mov esi, eax
call fcn.1003c81e
push ebx
push ebp
jmp 0x10155140
call fcn.1003ddac
xor ecx, ecx
push ecx
push ecx
xor ebp, ebp
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
call fcn.1003ddac
push ebp
push ebp
push eax
push dword [esp + 0xc]
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x40]
push edi
push eax
push esi
call fcn.1003e771
add esp, 0xc
mov esi, dword [esi]
call fcn.1003fe44
push eax
push esi
call fcn.1003c15c
add esp, 8
lea ecx, [esp + 8]
mov esi, ecx
push eax
call fcn.1003f668
push 0xf8
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [esi]
mov edi, esi
call fcn.1003be3a
add esp, 0x10
lea esi, [esp + 0x38]
push ebx
push eax
push esi
call fcn.1003c798
add esp, 0xc
push 3
call fcn.1003c0ec
add esp, 4
lea ecx, [esp + 0x14]
push eax
push dword [esi]
push ecx
call fcn.1003f8bd
add esp, 0xc
push 0xfc00
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x2c]
push ebx
push eax
push edi
call fcn.1003c798
add esp, 0xc
push 5
call fcn.1003c0ec
add esp, 4
lea esi, [esp + 0x30]
push eax
push dword [edi]
push esi
call fcn.1003f8bd
add esp, 0xc
push 0xf80000
call fcn.1003c0ec
add esp, 4
mov ebx, eax
call fcn.1003b794
push ebp
push ebp
push eax
lea eax, [esp + 0x14]
push dword [eax]
call fcn.1003be3a
add esp, 0x10
lea edi, [esp + 0x24]
push ebx
push eax
push edi
call fcn.1003c798
add esp, 0xc
push 8
call fcn.1003c0ec
add esp, 4
lea ebx, [esp + 0x28]
push eax
push dword [edi]
push ebx
call fcn.1003f8bd
add esp, 0xc
lea edi, [esp + 0x34]
push dword [esi]
push dword [ebx]
push edi
call fcn.1003c7b8
add esp, 0xc
lea esi, [esp + 0x3c]
lea eax, [esp + 0x14]
push dword [eax]
push dword [edi]
push esi
call fcn.1003c7b8
add esp, 0xc
lea edi, [esp + 0x10]
mov ecx, edi
push dword [esi]
call fcn.1003c884
call fcn.1003c8c6
xor ecx, ecx
push ecx
push ecx
push eax
push dword [edi]
call fcn.1003be3a
add esp, 0x10
mov edi, eax
lea ebx, [esp + 0xe4]
mov ecx, ebx
push 1
push dword [esp + 0x158]
call fcn.100a7798
mov ebp, dword [ebx + 4]
mov ecx, ebx
call fcn.100b18fa
mov esi, eax
call fcn.1003c8c6
jmp 0x1015513c