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

Disassembly:
sub esp, 0xbc
mov eax, dword [0x154ed66c]
mov dword [esp + 0xb8], eax
xor eax, eax
mov dword [esp + 0x42], eax
xor ecx, ecx
mov dword [esp + 0x46], eax
mov dword [esp + 0x6a], ecx
mov dword [esp + 0x4a], eax
mov dword [esp + 0x6e], ecx
mov dword [esp + 0x4e], eax
mov dword [esp + 0x72], ecx
mov dword [esp + 0x52], eax
mov dword [esp + 0x76], ecx
mov dword [esp + 0x56], eax
mov dword [esp + 0x7a], ecx
mov dword [esp + 0x5a], eax
mov dword [esp + 0x7e], ecx
mov dword [esp + 0x5e], eax
mov dword [esp + 0x62], eax
mov dword [esp + 0x82], ecx
push ebx
xor ebx, ebx
mov word [esp + 0x6a], ax
cmp dword [0x154f004c], ebx
mov dword [esp + 0x8a], ecx
mov dword [esp + 0x8e], ecx
mov word [esp + 0x44], bx
mov word [esp + 0x6c], bx
mov word [esp + 0x92], cx
je 0x154937f6
push ebp
push esi
push edi
push 0x154f0040
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
call fcn.15485710
test eax, eax
je 0x154937db
push ebx
push 0x154f0040
call fcn.1547d6a0
test eax, eax
je 0x154937db
cmp dword [0x154f004c], ebx
je 0x154937db
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154937db
push 0x154f0040
call fcn.15480430
test eax, eax
je 0x15493129
push ebx
lea edx, [esp + 0x50]
push edx
push 0x154f0040
call fcn.154804e0
push eax
push 0x154f0040
call fcn.154800b0
mov esi, eax
cmp esi, ebx
je 0x15493129
xor eax, eax
mov dword [esp + 0xa2], eax
mov dword [esp + 0xa6], eax
mov dword [esp + 0xaa], eax
mov dword [esp + 0xae], eax
mov dword [esp + 0xb2], eax
mov dword [esp + 0xb6], eax
push 0x14
mov dword [esp + 0xbe], eax
lea ecx, [esp + 0xa4]
push ecx
mov dword [esp + 0xc6], eax
push esi
mov dword [esp + 0xce], eax
push 0x154f0040
mov word [esp + 0xb0], bx
mov word [esp + 0xd6], ax
call fcn.15486d70
lea edx, [esp + 0xa0]
push 0x154dba10
push edx
call fcn.154bc6ef
add esp, 8
test eax, eax
je 0x154930d9
push 0xf
push 0x154f0040
call fcn.15480240
test eax, eax
jne 0x15493129
push esi
push 0x154f0040
call fcn.1547fce0
test eax, eax
jne 0x1549310b
cmp dword [0x154f004c], ebx
je 0x1549310b
push 0x64
push 0x154f0040
call fcn.1547c820
push esi
push 0x154f0040
call fcn.1547fce0
test eax, eax
je 0x154930e8
mov eax, dword [esp + 0x4c]
push eax
push 0x154f0040
call fcn.154869a0
push 0x7d0
push 0x154f0040
call fcn.1547c820
call fcn.154916d0
push 0x154f0040
call fcn.15485710
test eax, eax
je 0x154937db
push ebx
push 0x154f0040
call fcn.1547d6a0
test eax, eax
je 0x154937db
cmp dword [0x154f004c], ebx
je 0x154937db
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154937db
call fcn.1548ec40
call fcn.1548f390
cmp dword [0x154f0160], ebx
je 0x154931b3
mov esi, dword [0x154d9358]
call esi
sub eax, dword [0x154f0164]
cmp eax, 0xbb8
jbe 0x154931b3
push 0x154f0040
call fcn.15485090
push 0x154f0040
call fcn.1548a4d0
call esi
mov dword [0x154f0164], eax
push 0x154f0040
call fcn.15485710
test eax, eax
je 0x154937db
push ebx
push 0x154f0040
call fcn.1547d6a0
test eax, eax
je 0x154937db
cmp dword [0x154f004c], ebx
je 0x154937db
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154937db
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x1c]
push eax
push 0x154f0040
call fcn.154806f0
fild dword [0x154ea1bc]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x20]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.15492490
fild dword [0x154ea1bc]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x20]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.1548eca0
fild dword [0x154ea1bc]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x20]
fstp dword [esp]
push ecx
push edx
push eax
call fcn.1548f470
push 0x154f0040
call fcn.15485710
test eax, eax
je 0x154937db
push ebx
push 0x154f0040
call fcn.1547d6a0
test eax, eax
je 0x154937db
cmp dword [0x154f004c], ebx
je 0x154937db
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154937db
push 0x154f0040
call fcn.1547d8e0
and eax, ebx
and edx, 0x80000000
or eax, edx
je 0x154937db
mov eax, 1
mov dword [0x154f015c], eax
mov dword [0x154ecb34], eax
mov eax, dword [0x154f004c]
xor ebp, ebp
cmp eax, ebx
je 0x154937d5
jmp 0x154932f0
mov ebp, dword [esp + 0x10]
xor ebx, ebx
lea esp, [esp]
push 0x154f0040
call fcn.15485710
test eax, eax
je 0x154937d5
push ebx
push 0x154f0040
call fcn.1547d6a0
test eax, eax
je 0x154937d5
push 0x154f0040
call fcn.1547d8e0
mov edi, eax
mov esi, edx
mov ecx, edi
or ecx, esi
je 0x154937d5
mov ecx, esi
and ecx, 0x80000000
xor eax, eax
or eax, ecx
je 0x154937d5
lea edx, [esp + 0x28]
push edx
push 0x154f0040
call fcn.1547dcb0
mov ecx, dword [esp + 0x28]
push ecx
push esi
push edi
push eax
push 0x154f0040
call fcn.1547f720
mov ebx, eax
test ebx, ebx
je 0x154933cd
push ebx
push 0x154f0040
call fcn.1547ebc0
test eax, eax
jne 0x154933cd
push 0x14
lea edx, [esp + 0x54]
push edx
push ebx
push 0x154f0040
call fcn.1547f450
lea eax, [esp + 0x50]
push 0x154da25c
push eax
call fcn.154bbdd3
add esp, 8
test eax, eax
je 0x154933cd
lea ecx, [esp + 0x50]
push 0x154da250
push ecx
call fcn.154bbdd3
add esp, 8
test eax, eax
je 0x154933cd
lea edx, [esp + 0x50]
push 0x154da240
push edx
call fcn.154bbdd3
add esp, 8
test eax, eax
jne 0x154937d3
push ebp
push 0x3b
mov ecx, 0x154f0168
call fcn.15473b70
mov esi, eax
cmp esi, 0xffffffff
jne 0x15493405
test ebp, ebp
je 0x154937d3
push 0
push 0x3b
mov ecx, 0x154f0168
mov dword [esp + 0x18], 0
call fcn.15473b70
mov ebp, dword [esp + 0x10]
mov esi, eax
mov eax, dword [0x154f00c8]
test eax, eax
je 0x1549343b
test ebp, ebp
jne 0x1549343b
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x1549343b
inc esi
push esi
push 0x3b
mov ecx, 0x154f0168
mov dword [esp + 0x18], esi
call fcn.15473b70
mov esi, eax
cmp esi, 0xffffffff
je 0x154937d3
mov ebp, dword [esp + 0x10]
mov eax, esi
sub eax, ebp
push eax
push ebp
lea ecx, [esp + 0x38]
push ecx
mov ecx, 0x154f0168
call fcn.15473f50
mov edx, dword [eax]
push edx
lea eax, [esp + 0x7c]
push eax
call fcn.154bb9a2
add esp, 8
lea ecx, [esp + 0x30]
call fcn.154722e0
mov eax, dword [0x154f0104]
inc esi
test eax, eax
mov dword [esp + 0x10], esi
je 0x154934d1
push 0x14
lea ecx, [esp + 0x54]
push ecx
push ebx
push 0x154f0040
call fcn.1547f450
lea edx, [esp + 0x50]
push 0x154dc7e4
push edx
call fcn.154bc6ef
add esp, 8
test eax, eax
jne 0x154934b5
lea eax, [esp + 0x50]
push 0x154dc7d8
push eax
call fcn.154bc6ef
add esp, 8
test eax, eax
je 0x154934d1
mov ecx, dword [0x154f018c]
push ecx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f00e0]
test eax, eax
je 0x15493517
push 1
push 0
push 0
push 0
push 0x154f0040
call fcn.15487860
fild dword [0x154f00e4]
fcompp
fnstsw ax
test ah, 1
jne 0x15493517
mov edx, dword [0x154f0180]
push edx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f00e8]
test eax, eax
je 0x1549355c
push 1
push 0
push 0
push 0
push 0x154f0040
call fcn.15487860
fild dword [0x154f00ec]
fcompp
fnstsw ax
test ah, 1
jne 0x1549355c
mov eax, dword [0x154f0184]
push eax
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f00f0]
test eax, eax
je 0x154935a2
push 1
push 0
push 0
push 0
push 0x154f0040
call fcn.15487860
fild dword [0x154f00f4]
fcompp
fnstsw ax
test ah, 0x41
jp 0x154935a2
mov ecx, dword [0x154f0188]
push ecx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f00cc]
test eax, eax
je 0x1549374c
push ebx
push 0x154f0040
mov dword [esp + 0x28], 0
call fcn.1547cb60
xor eax, eax
and edx, 0x80000000
or eax, edx
je 0x1549374c
lea edx, [esp + 0x24]
push edx
push 0x154f0040
call fcn.1547dcb0
mov ebp, eax
test ebp, ebp
je 0x154936d1
mov eax, dword [esp + 0x24]
xor edi, edi
test eax, eax
jbe 0x154936d1
lea esp, [esp]
push edi
push ebp
push 0x154f0040
call fcn.1547f6b0
mov esi, eax
test esi, esi
je 0x154936c4
jmp 0x15493620
push esi
push 0x154f0040
call fcn.1547ebc0
test eax, eax
je 0x154936ad
push esi
push 0x154f0040
call fcn.1547f630
test eax, eax
jne 0x154936ad
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x48]
push edx
push ebx
push 0x154f0040
call fcn.1547f2b0
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x4c]
push ecx
lea edx, [esp + 0x4c]
push edx
push esi
push 0x154f0040
call fcn.1547f2b0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x4c]
push eax
push ecx
push edx
push 0x154f0040
call fcn.154879b0
fild dword [0x154f00cc]
fcompp
fnstsw ax
test ah, 1
jne 0x154936ad
inc dword [esp + 0x20]
push 0
push esi
push 0x154f0040
call fcn.1547f6b0
mov esi, eax
test esi, esi
jne 0x15493620
mov eax, dword [esp + 0x24]
inc edi
cmp edi, eax
jb 0x15493600
mov eax, dword [esp + 0x20]
cmp eax, dword [0x154f00d0]
jl 0x1549374c
mov ecx, dword [0x154f0170]
push ecx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov edx, dword [0x154f0174]
push edx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f0178]
push eax
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov ecx, dword [0x154f017c]
push ecx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
lea edx, [esp + 0x78]
push 0x154dc6b4
push edx
call fcn.154bbdd3
add esp, 8
test eax, eax
jne 0x1549376e
push 0x154f0040
call fcn.1548ad90
jmp 0x15493788
lea eax, [esp + 0x78]
push eax
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [0x154f0168]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jl 0x154937ba
lea ecx, [esp + 0x78]
push ecx
push eax
call fcn.154bc6ef
add esp, 8
test eax, eax
je 0x154937ba
sub eax, dword [0x154f0168]
sar eax, 1
test eax, eax
jne 0x154937ba
mov dword [esp + 0x2c], 1
push 0x64
push 0x154f0040
call fcn.1547c820
mov eax, dword [0x154f004c]
test eax, eax
jne 0x154932e6
xor ebx, ebx
mov dword [0x154f015c], ebx
push 0x64
push 0x154f0040
call fcn.1547c820
cmp dword [0x154f004c], ebx
jne 0x15492fb0
pop edi
pop esi
pop ebp
mov ecx, dword [esp + 0xbc]
xor eax, eax
pop ebx
call fcn.154bbb2d
add esp, 0xbc
ret 4