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

Disassembly:
sub esp, 0x78
mov eax, dword [0x154ed66c]
mov dword [esp + 0x74], eax
mov eax, dword [0x154f0f00]
push ebp
xor ebp, ebp
cmp eax, ebp
je 0x154b4eb2
push ebx
push esi
push edi
nop
cmp dword [0x154f004c], ebp
je 0x154b4eaf
push 0x154f0040
mov dword [esp + 0x24], ebp
call fcn.15480430
test eax, eax
je 0x154b48d8
push ebp
lea eax, [esp + 0x50]
push eax
push 0x154f0040
call fcn.154804e0
push eax
push 0x154f0040
call fcn.154800b0
mov esi, eax
cmp esi, ebp
je 0x154b48d8
xor ecx, ecx
mov dword [esp + 0x5e], ecx
mov dword [esp + 0x62], ecx
mov dword [esp + 0x66], ecx
mov dword [esp + 0x6a], ecx
mov dword [esp + 0x6e], ecx
mov dword [esp + 0x72], ecx
push 0x14
mov dword [esp + 0x7a], ecx
lea edx, [esp + 0x60]
push edx
mov dword [esp + 0x82], ecx
push esi
mov dword [esp + 0x8a], ecx
push 0x154f0040
mov word [esp + 0x6c], bp
mov word [esp + 0x92], cx
call fcn.15486d70
lea eax, [esp + 0x5c]
push 0x154dba10
push eax
call fcn.154bc6ef
add esp, 8
test eax, eax
je 0x154b4888
push 0xf
push 0x154f0040
call fcn.15480240
test eax, eax
jne 0x154b48d8
push esi
push 0x154f0040
call fcn.1547fce0
test eax, eax
jne 0x154b48ba
cmp dword [0x154f004c], ebp
je 0x154b48ba
push 0x64
push 0x154f0040
call fcn.1547c820
push esi
push 0x154f0040
call fcn.1547fce0
test eax, eax
je 0x154b4897
mov ecx, dword [esp + 0x4c]
push ecx
push 0x154f0040
call fcn.154869a0
push 0x7d0
push 0x154f0040
call fcn.1547c820
push 0x154f0040
call fcn.15480e60
test eax, eax
je 0x154b4981
cmp dword [0x154ef884], ebp
je 0x154b4981
cmp dword [0x154f004c], ebp
je 0x154b4981
lea edx, [esp + 0x58]
push edx
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x44]
push ecx
push 0x154f0040
call fcn.154806f0
push 0x154f0040
call fcn.15487b40
push 0x2710
push 0x154f0040
call fcn.1547c820
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154b4981
push 0x154f0040
call fcn.15482ee0
mov edx, dword [esp + 0x34]
cmp eax, 0xd2
mov eax, dword [esp + 0x3c]
push ebp
jne 0x154b4970
push 0x1f4
push ebp
push edx
push eax
push 0x154f0040
call fcn.15488400
jmp 0x154b4981
mov ecx, dword [esp + 0x5c]
push ecx
push edx
push eax
push 0x154f0040
call fcn.1548bbb0
push 0x154f0040
call fcn.15480e60
test eax, eax
jne 0x154b4e94
cmp dword [0x154f0f0c], ebp
je 0x154b49ea
mov ecx, dword [0x154f0f40]
push ecx
push 0x154f0040
call fcn.154864d0
mov esi, eax
cmp esi, ebp
je 0x154b49ea
push esi
push 0x154f0040
call fcn.1547cb60
push 0x154f0040
mov edi, eax
mov ebx, edx
call fcn.1547d8e0
cmp edi, eax
jne 0x154b49d3
cmp ebx, edx
je 0x154b49ea
push esi
push 0x154f0040
call fcn.1547cb60
push edx
push eax
push 0x154f0040
call fcn.15485990
push 0x154f0040
call fcn.1547d8e0
or eax, edx
je 0x154b4c04
push 0x154f0040
call fcn.1547d8e0
and eax, ebp
and edx, 0x80000000
or eax, edx
jne 0x154b4c04
cmp dword [0x154f0f10], ebp
je 0x154b4ab9
lea edx, [esp + 0x20]
push edx
push 0x154f0040
call fcn.1547dbb0
mov esi, eax
cmp esi, ebp
je 0x154b4ab9
mov eax, dword [esp + 0x20]
push eax
push 0x154f0040
call fcn.1547d8e0
push edx
push eax
push esi
push 0x154f0040
call fcn.1547f720
cmp eax, ebp
je 0x154b4ab9
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x30]
push edx
lea ecx, [esp + 0x30]
push ecx
push eax
push 0x154f0040
call fcn.1547f1c0
test eax, eax
je 0x154b4ab9
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
push ebp
push edx
push eax
push ecx
push 0x154f0040
call fcn.15487860
fcomp qword [0x154db868]
fnstsw ax
test ah, 0x41
jne 0x154b4ab9
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
push 0x154f0040
call fcn.15487f70
cmp dword [0x154f0f04], ebp
jne 0x154b4acd
cmp dword [0x154f0f08], ebp
je 0x154b4bcb
lea edx, [esp + 0x20]
push edx
push 0x154f0040
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
call fcn.1547dbb0
mov esi, eax
mov eax, dword [esp + 0x20]
push eax
push 0x154f0040
call fcn.1547d8e0
push edx
push eax
push esi
push 0x154f0040
call fcn.1547f720
cmp dword [0x154f0f04], ebp
je 0x154b4b58
cmp eax, ebp
je 0x154b4b58
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x1c]
push edx
push eax
push 0x154f0040
call fcn.1547ec40
mov ecx, dword [esp + 0x1c]
cmp ecx, ebp
jle 0x154b4b58
mov eax, dword [esp + 0x18]
imul eax, eax, 0x64
cdq
idiv ecx
cmp eax, dword [0x154f0f14]
jg 0x154b4b58
mov eax, dword [0x154f0f38]
push eax
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov ecx, dword [esp + 0x20]
push ecx
push 0x154f0040
call fcn.1547d8e0
push edx
push eax
push esi
push 0x154f0040
call fcn.1547f720
cmp dword [0x154f0f08], ebp
je 0x154b4bcb
cmp eax, ebp
je 0x154b4bcb
lea edx, [esp + 0x1c]
push edx
lea ecx, [esp + 0x1c]
push ecx
push eax
push 0x154f0040
call fcn.1547ec40
mov ecx, dword [esp + 0x1c]
cmp ecx, ebp
jle 0x154b4bcb
mov eax, dword [esp + 0x18]
imul eax, eax, 0x64
cdq
idiv ecx
cmp eax, dword [0x154f0f18]
jg 0x154b4bcb
mov edx, dword [0x154f0f3c]
push edx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
call fcn.154b3d60
call fcn.154b4070
test eax, eax
je 0x154b4c04
push 0x154f0040
call fcn.1547d8e0
push ebp
push ebp
push 0x154f0040
mov esi, eax
mov edi, edx
call fcn.15485990
call fcn.154916d0
push edi
push esi
push 0x154f0040
call fcn.15485990
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x30]
push edx
push 0x154f0040
call fcn.154806f0
cmp dword [0x154f0f1c], ebp
je 0x154b4e94
cmp dword [0x154f0f20], ebp
je 0x154b4e94
push 0x154f0040
call fcn.1547d8e0
mov dword [esp + 0x50], eax
lea eax, [esp + 0x30]
push eax
push 0x154f0040
mov dword [esp + 0x5c], edx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x40], ebp
mov dword [esp + 0x20], 0x3e8
call fcn.1547e650
mov ebp, eax
test ebp, ebp
je 0x154b4e7e
mov ecx, dword [esp + 0x30]
xor eax, eax
test ecx, ecx
mov dword [esp + 0x1c], eax
jbe 0x154b4e7e
push eax
push ebp
push 0x154f0040
call fcn.1547f6b0
mov esi, eax
test esi, esi
je 0x154b4d97
push esi
push 0x154f0040
call fcn.15481d10
push 0x154f0040
mov edi, eax
mov ebx, edx
call fcn.15480d90
cmp edi, eax
jne 0x154b4cbd
cmp ebx, edx
je 0x154b4d97
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0x48]
push eax
push esi
push 0x154f0040
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
call fcn.15481dc0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x4c]
push edx
mov edx, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push edx
push eax
push 0x154f0040
call fcn.154879b0
fild dword [0x154f0f20]
fcompp
fnstsw ax
test ah, 1
jne 0x154b4d97
lea ecx, [esp + 0x10]
push ecx
lea edx, [esp + 0x18]
push edx
push esi
xor edi, edi
push 0x154f0040
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], edi
call fcn.15481e40
mov ecx, dword [esp + 0x14]
cmp ecx, edi
je 0x154b4d97
mov edi, dword [esp + 0x10]
test edi, edi
je 0x154b4d97
mov eax, dword [0x154f0f04]
test eax, eax
je 0x154b4d6f
mov eax, ecx
imul eax, eax, 0x64
xor edx, edx
div edi
cmp eax, dword [0x154f0f14]
jbe 0x154b4d89
mov eax, dword [0x154f0f08]
test eax, eax
je 0x154b4d97
mov eax, ecx
imul eax, eax, 0x64
xor edx, edx
div edi
cmp eax, dword [0x154f0f18]
ja 0x154b4d97
cmp eax, dword [esp + 0x18]
jae 0x154b4d97
mov dword [esp + 0x38], esi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
inc eax
cmp eax, ecx
mov dword [esp + 0x1c], eax
jb 0x154b4c82
mov esi, dword [esp + 0x38]
xor edi, edi
cmp esi, edi
je 0x154b4e7e
cmp dword [0x154f004c], edi
je 0x154b4e7e
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push esi
push 0x154f0040
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], edi
call fcn.15481e40
mov ecx, dword [esp + 0x10]
cmp ecx, edi
je 0x154b4e22
cmp dword [0x154f0f04], edi
je 0x154b4e22
mov eax, dword [esp + 0x14]
imul eax, eax, 0x64
xor edx, edx
div ecx
cmp eax, dword [0x154f0f14]
ja 0x154b4e22
mov edx, dword [0x154f0f38]
push edx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x18]
push ecx
push esi
push 0x154f0040
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], edi
call fcn.15481e40
mov ecx, dword [esp + 0x10]
cmp ecx, edi
je 0x154b4e7e
cmp dword [0x154f0f08], edi
je 0x154b4e7e
mov eax, dword [esp + 0x14]
imul eax, eax, 0x64
xor edx, edx
div ecx
cmp eax, dword [0x154f0f18]
ja 0x154b4e7e
mov edx, dword [0x154f0f3c]
push edx
push 0x154f0040
call fcn.1548d140
push eax
push 0x154f0040
call fcn.1548ce30
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
push eax
push ecx
push 0x154f0040
call fcn.15485990
xor ebp, ebp
push 0xfa
push 0x154f0040
call fcn.1547c820
cmp dword [0x154f0f00], ebp
jne 0x154b47d0
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x78]
pop ebp
call fcn.154bbb2d
add esp, 0x78
ret