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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x110
mov al, byte [ebx + 0x8c]
test al, al
push esi
push edi
je 0x542285
lea edi, [ebx + 0x5c]
push edi
mov byte [ebx + 0x8c], 0
mov dword [esp + 0x18], edi
call fcn.004e8390
mov esi, ebx
call fcn.00543330
mov eax, dword [ebx + 0x90]
mov ecx, dword [ebx + 0x84]
add ecx, eax
mov esi, eax
cmp esi, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x10], esi
jl 0x542290
push edi
call fcn.004e8290
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x10]
nop
push 0x10
call fcn.0059e170
add esp, 4
test eax, eax
je 0x5422ae
lea ecx, [eax + 8]
mov edi, eax
mov dword [ecx], ecx
mov dword [ecx + 4], ecx
mov dword [esp + 0xc], edi
jmp 0x5422ba
mov dword [esp + 0xc], 0
mov edi, dword [esp + 0xc]
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0xc]
lea eax, [edx + 8]
mov dword [ecx], edi
mov dword [eax + 4], edi
mov dword [edi + 4], ecx
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
test ecx, ecx
jne 0x5422da
mov ecx, dword [eax]
mov dword [edx + 0x14], ecx
mov ecx, dword [edx + 0x10]
test ecx, ecx
jne 0x5422e6
mov eax, dword [eax]
mov dword [edx + 0x10], eax
mov eax, dword [0x72f570]
test eax, eax
jne 0x5422f3
xor esi, esi
jmp 0x54230c
mov eax, dword [0x72f548]
test eax, eax
jne 0x542300
xor esi, esi
jmp 0x54230c
push esi
push eax
call fcn.0065a4c0
add esp, 8
mov esi, eax
mov eax, dword [ebx + 0x7c]
mov edx, dword [esp + 0x10]
cmp edx, eax
jne 0x542324
cmp byte [ebx + 0x135], 1
je 0x5429e5
cmp edx, eax
lea ecx, [edx + 1]
mov dword [esp + 0x38], ecx
jne 0x542383
mov al, byte [ebx + 0x135]
test al, al
jne 0x542383
cmp byte [ebx + 0x134], 1
jne 0x542383
mov eax, dword [ebx + 0x78]
test eax, eax
jne 0x542351
mov ecx, dword [ebx + 0xa0]
jmp 0x542383
cmp eax, 1
jne 0x54235e
mov ecx, dword [ebx + 0xbc]
jmp 0x542383
cmp eax, 2
jne 0x54236b
mov ecx, dword [ebx + 0xd8]
jmp 0x542383
cmp eax, 3
jne 0x542378
mov ecx, dword [ebx + 0xf4]
jmp 0x542383
cmp eax, 4
jne 0x542383
mov ecx, dword [ebx + 0x110]
push ecx
push 0x6bbb44
push 8
lea edx, [esp + 0x10c]
call fcn.004e58e0
add esp, 0xc
lea ecx, [esp + 0x100]
push ecx
push edi
call fcn.00416200
test esi, esi
jne 0x542429
mov edx, dword [esp + 0x10]
cmp edx, dword [ebx + 0x7c]
jge 0x5423f1
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
jmp 0x5429c3
mov eax, dword [esp + 0xc]
push 0x729754
lea esi, [ebx + 0xa0]
mov ecx, 0x23
lea edi, [esp + 0x44]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00416200
lea ecx, [esp + 0x108]
push 0x729754
push ecx
call fcn.0059aad0
mov edi, dword [esp + 0x14]
jmp 0x54245c
push 0x6aeab8
push 0x8c
lea edx, [esp + 0x48]
push edx
lea eax, [esi + 0x28]
push eax
call fcn.0065b880
add esp, 0x10
add esi, 8
push esi
push edi
call fcn.00416200
lea ecx, [esp + 0x108]
push esi
push ecx
call fcn.0059aad0
mov eax, dword [ebx + 0x88]
add esp, 8
test eax, eax
jne 0x542720
mov eax, dword [ebx + 0x78]
test eax, eax
jne 0x5424dc
mov edx, dword [esp + 0x50]
push edx
lea eax, [esp + 0xe4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0x50]
push ecx
lea edx, [esp + 0x40]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0x60]
push eax
lea ecx, [esp + 0x44]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
add eax, edx
add esp, 0x24
test eax, eax
mov dword [esp + 0xc], eax
jne 0x5424d3
fld dword [0x6bda00]
jmp 0x5425ca
fild dword [esp + 0x44]
jmp 0x5425c4
cmp eax, 1
jne 0x54254c
mov edx, dword [esp + 0x6c]
push edx
lea eax, [esp + 0xe4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0x6c]
push ecx
lea edx, [esp + 0x40]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0x7c]
push eax
lea ecx, [esp + 0x44]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x88]
add eax, edx
add esp, 0x24
test eax, eax
mov dword [esp + 0xc], eax
jne 0x542546
fld dword [0x6bda00]
jmp 0x5425ca
fild dword [esp + 0x60]
jmp 0x5425c4
cmp eax, 2
jne 0x5425e5
mov edx, dword [esp + 0x88]
push edx
lea eax, [esp + 0xe4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0x88]
push ecx
lea edx, [esp + 0x40]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0x98]
push eax
lea ecx, [esp + 0x44]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0xa4]
add eax, edx
add esp, 0x24
test eax, eax
mov dword [esp + 0xc], eax
jne 0x5425c0
fld dword [0x6bda00]
jmp 0x5425ca
fild dword [esp + 0x7c]
fild dword [esp + 0xc]
fdivp st(1)
fmul dword [0x6bdc58]
call fcn.00666390
push eax
push str._d____
lea ecx, [esp + 0x20]
push ecx
jmp 0x5426ea
cmp eax, 3
jne 0x542668
mov edx, dword [esp + 0xa4]
push edx
lea eax, [esp + 0xe4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0xa4]
push ecx
lea edx, [esp + 0x40]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0xb4]
push eax
lea ecx, [esp + 0x44]
push 0x6bbb44
push ecx
call fcn.005986d0
mov eax, dword [esp + 0xbc]
mov edx, dword [esp + 0xc0]
add esp, 0x24
add edx, eax
push edx
push eax
push ebx
call fcn.00543520
fmul dword [0x6bdc58]
call fcn.00666390
push eax
push str._d____
lea eax, [esp + 0x20]
push eax
jmp 0x5426ea
cmp eax, 4
jne 0x5426f2
mov ecx, dword [esp + 0xc0]
push ecx
lea edx, [esp + 0xe4]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0xc0]
push eax
lea ecx, [esp + 0x40]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0xd0]
push edx
lea eax, [esp + 0x44]
push 0x6bbb44
push eax
call fcn.005986d0
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xdc]
add esp, 0x24
add ecx, eax
push ecx
push eax
push ebx
call fcn.00543520
fmul dword [0x6bdc58]
call fcn.00666390
push eax
push str._d____
lea edx, [esp + 0x20]
push edx
call fcn.005986d0
add esp, 0xc
lea eax, [esp + 0xe0]
push eax
push edi
call fcn.00416200
lea ecx, [esp + 0x30]
push ecx
push edi
call fcn.00416200
lea edx, [esp + 0x28]
push edx
push edi
call fcn.00416200
lea eax, [esp + 0x18]
push eax
jmp 0x542980
cmp eax, 1
jne 0x542986
mov eax, dword [ebx + 0x78]
test eax, eax
jne 0x54278d
mov ecx, dword [esp + 0x54]
push ecx
lea edx, [esp + 0xd4]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0x64]
push eax
lea ecx, [esp + 0x100]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x60]
add eax, edx
add esp, 0x18
test eax, eax
mov dword [esp + 0xc], eax
jne 0x54277e
fld dword [0x6bda00]
jmp 0x54284d
fild dword [esp + 0x4c]
fild dword [esp + 0xc]
fdivp st(1)
jmp 0x54284d
cmp eax, 1
jne 0x5427f2
mov edx, dword [esp + 0x70]
push edx
lea eax, [esp + 0xd4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0x80]
push ecx
lea edx, [esp + 0x100]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
add eax, ecx
add esp, 0x18
test eax, eax
mov dword [esp + 0xc], eax
jne 0x5427e3
fld dword [0x6bda00]
jmp 0x542936
fild dword [esp + 0x68]
fild dword [esp + 0xc]
fdivp st(1)
jmp 0x542936
cmp eax, 2
jne 0x542868
mov eax, dword [esp + 0x8c]
push eax
lea ecx, [esp + 0xd4]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0x9c]
push edx
lea eax, [esp + 0x100]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x98]
mov eax, dword [esp + 0x9c]
add esp, 0x18
add edx, ecx
push edx
push eax
push ebx
call fcn.00543520
fmul dword [0x6bdc58]
call fcn.00666390
push eax
push str._d____
lea ecx, [esp + 0x28]
push ecx
jmp 0x54294c
cmp eax, 3
jne 0x5428db
mov edx, dword [esp + 0xa8]
push edx
lea eax, [esp + 0xd4]
push 0x6bbb44
push eax
call fcn.005986d0
mov ecx, dword [esp + 0xb8]
push ecx
lea edx, [esp + 0x100]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0xb8]
add esp, 0x18
add ecx, eax
push ecx
push edx
push ebx
call fcn.00543520
fmul dword [0x6bdc58]
call fcn.00666390
push eax
push str._d____
lea eax, [esp + 0x28]
push eax
jmp 0x54294c
cmp eax, 4
jne 0x542954
mov ecx, dword [esp + 0xc4]
push ecx
lea edx, [esp + 0xd4]
push 0x6bbb44
push edx
call fcn.005986d0
mov eax, dword [esp + 0xd4]
push eax
lea ecx, [esp + 0x100]
push 0x6bbb44
push ecx
call fcn.005986d0
mov edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xd0]
mov ecx, dword [esp + 0xd4]
add esp, 0x18
add eax, edx
push eax
push ecx
push ebx
call fcn.00543520
fmul dword [0x6bdc58]
call fcn.00666390
push eax
lea edx, [esp + 0x24]
push str._d____
push edx
call fcn.005986d0
add esp, 0xc
lea eax, [esp + 0xd0]
push eax
push edi
call fcn.00416200
lea ecx, [esp + 0xf0]
push ecx
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
lea edx, [esp + 0x20]
push edx
push edi
call fcn.00416200
lea eax, [esp + 0x108]
push 0x729754
push eax
call fcn.0059ab30
add esp, 8
test eax, eax
jne 0x5429c3
mov ecx, dword [ebx + 0x12c]
cmp ecx, dword [ebx + 0x130]
jne 0x5429c3
mov esi, dword [ebx + 0x90]
mov eax, dword [esp + 0x10]
sub eax, esi
push 0xffffffffffffffff
inc eax
push eax
push ebx
call fcn.00542c90
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x3c]
mov dword [esp + 0x10], eax
jl 0x54228b
mov edi, dword [esp + 0x14]
push edi
call fcn.004e8290
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
push 0x7805ad
push edi
call fcn.00416200
mov edx, dword [esp + 0x14]
push edx
call fcn.004e8290
pop edi
pop esi
mov esp, ebp
pop ebp
ret