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

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
sub esp, 0xbc
and esp, 0xfffffff8
mov dword [esp + 0x14], 1
mov dword [esp + 0x24], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x3c], 0
lea edi, [esp + 0x50]
mov esi, 0x4f03c8
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x48], 0
lea eax, [esp + 0x78]
mov dword [esp + 0x18], eax
mov dword [esp + 0x4c], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x1c], 0
push 1
call fcn.004a5270
pop ecx
mov eax, dword [eax + 0x27c]
mov esi, dword [eax]
movzx eax, byte [esi]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov ebx, dword [esp + 0x14]
mov edi, ebx
sub edi, 1
je 0x4b9412
sub edi, 1
je 0x4b96b0
sub edi, 2
je 0x4b9750
sub edi, 4
je 0x4b9780
sub edi, 8
je 0x4b97f2
sub edi, 0x10
je 0x4b9820
sub edi, 0x20
je 0x4b9880
sub edi, 0x40
je 0x4b98d0
sub edi, 0x80
je 0x4b9913
sub edi, 0x100
je 0x4b9960
sub edi, 0x200
je 0x4b9990
sub edi, 0x1c00
je 0x4b9572
sub edi, 0x2000
je 0x4b94d0
sub edi, 0x4000
je 0x4b99f8
jmp 0x4b9dba
movzx ebx, al
movzx edx, byte [ebx + 0x4d8650]
and edx, 6
je 0x4b9437
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
inc dword [esp + 0x3c]
jmp 0x4b9dba
cmp eax, 0xffffffff
jne 0x4b9441
or ecx, 0xffffffff
jmp 0x4b9448
movzx ecx, byte [ebx + 0x4d8850]
mov esi, ecx
sub ecx, 0x2b
je 0x4b9468
sub ecx, 2
je 0x4b9460
sub ecx, 0x1c
je 0x4b9486
sub ecx, 5
je 0x4b94a4
jmp 0x4b94c2
mov dword [esp + 0x40], 1
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov dword [esp + 0x48], 1
jmp 0x4b9dba
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov dword [esp + 0x14], 0x4000
jmp 0x4b9dba
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov dword [esp + 0x14], 0x2000
jmp 0x4b9dba
mov dword [esp + 0x14], 2
jmp 0x4b9dba
mov ebx, 1
lea edi, [esp + 0x84]
mov esi, str.INFINITY
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x4b94f8
inc ebx
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
cmp ebx, 8
jge 0x4b951d
cmp eax, 0xffffffff
jne 0x4b9507
or edx, 0xffffffff
jmp 0x4b9511
movzx edx, al
movzx edx, byte [edx + 0x4d8850]
movsx ecx, byte [esp + ebx + 0x84]
cmp ecx, edx
je 0x4b94e6
cmp ebx, 3
je 0x4b9527
cmp ebx, 8
jne 0x4b9565
cmp dword [esp + 0x40], 0
je 0x4b9538
fld dword [0x4d7f34]
fchs
jmp 0x4b953e
fld dword [0x4d7f34]
fstp qword [esp + 0x78]
add dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x3c]
add eax, dword [esp + 0x48]
mov dword [esp + 0x3c], eax
mov ecx, eax
mov eax, dword [ebp + 0x14]
mov dword [eax], ecx
fld qword [esp + 0x78]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
mov ebx, 1
mov dword [esp + 4], 0
lea edi, [esp + 0x90]
mov esi, str.NAN_
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x98]
mov esi, 0x4f03ee
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
jmp 0x4b95b4
inc ebx
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
cmp ebx, 4
jge 0x4b95d9
cmp eax, 0xffffffff
jne 0x4b95c3
or edx, 0xffffffff
jmp 0x4b95cd
movzx edx, al
movzx edx, byte [edx + 0x4d8850]
movsx ecx, byte [esp + ebx + 0x90]
cmp ecx, edx
je 0x4b95a2
cmp ebx, 3
je 0x4b95e7
cmp ebx, 4
jne 0x4b96a1
cmp ebx, 4
jne 0x4b9646
jmp 0x4b9610
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 0x98], al
inc dword [esp + 4]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
cmp dword [esp + 4], 0x20
jge 0x4b9630
movzx edx, al
movzx ecx, byte [edx + 0x4d8650]
mov edi, ecx
and edi, 0x10
jne 0x4b95f0
and ecx, 0xc0
jne 0x4b95f0
cmp eax, 0x29
je 0x4b9642
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
inc dword [esp + 4]
mov eax, dword [esp + 4]
mov byte [esp + eax + 0x98], 0
cmp dword [esp + 0x40], 0
je 0x4b9670
lea eax, [esp + 0x98]
push eax
call fcn.004bb4e5
pop ecx
fchs
jmp 0x4b967e
lea eax, [esp + 0x98]
push eax
call fcn.004bb4e5
pop ecx
fstp qword [esp + 0x78]
mov esi, dword [esp + 0x3c]
add esi, ebx
add esi, dword [esp + 4]
add esi, dword [esp + 0x48]
mov eax, dword [ebp + 0x14]
mov dword [eax], esi
fld qword [esp + 0x78]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
cmp eax, dword [esp + 0x34]
jne 0x4b96d4
mov dword [esp + 0x14], 0x10
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
movzx ebx, al
movzx edx, byte [ebx + 0x4d8650]
and edx, 0x10
jne 0x4b96f0
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9743
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x4b9712
or ecx, 0xffffffff
jmp 0x4b971c
movzx ecx, bl
movzx ecx, byte [ecx + 0x4d8850]
cmp ecx, 0x58
jne 0x4b9736
mov dword [esp + 0x14], 0x8000
mov dword [esp + 0x24], 1
jmp 0x4b9dba
mov dword [esp + 0x14], 4
jmp 0x4b9dba
mov dword [esp + 0x14], 8
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9770
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 8
jmp 0x4b9dba
movzx edx, al
movzx ebx, byte [edx + 0x4d8650]
and ebx, 0x10
jne 0x4b97c0
cmp eax, dword [esp + 0x34]
jne 0x4b97b3
mov dword [esp + 0x14], 0x20
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 0x40
jmp 0x4b9dba
cmp byte [esp + 0x54], 0x14
jae 0x4b97d8
mov cl, byte [esp + 0x54]
inc byte [esp + 0x54]
movzx edx, cl
mov byte [esp + edx + 0x55], al
jmp 0x4b97dc
inc dword [esp + 0x30]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
movzx ebx, al
movzx ecx, byte [ebx + 0x4d8650]
and ecx, 0x10
jne 0x4b9810
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
mov dword [esp + 0x14], 0x20
jmp 0x4b9dba
movzx edx, al
movzx ebx, byte [edx + 0x4d8650]
and ebx, 0x10
jne 0x4b9840
mov dword [esp + 0x14], 0x40
jmp 0x4b9dba
mov bl, byte [esp + 0x54]
cmp bl, 0x14
jae 0x4b9865
cmp eax, 0x30
jne 0x4b9852
test bl, bl
je 0x4b9861
mov cl, byte [esp + 0x54]
inc byte [esp + 0x54]
movzx edx, cl
mov byte [esp + edx + 0x55], al
dec dword [esp + 0x30]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
cmp eax, 0xffffffff
jne 0x4b9890
or ebx, 0xffffffff
jmp 0x4b989a
movzx ebx, al
movzx ebx, byte [ebx + 0x4d8850]
cmp ebx, 0x45
jne 0x4b98c0
mov dword [esp + 0x14], pe_nt_image_headers32
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 0x800
jmp 0x4b9dba
cmp eax, 0x2b
jne 0x4b98e8
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9906
cmp eax, 0x2d
jne 0x4b9906
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov dword [esp + 0x44], 1
mov dword [esp + 0x14], 0x100
jmp 0x4b9dba
movzx ecx, al
movzx edx, byte [ecx + 0x4d8650]
and edx, 0x10
jne 0x4b9930
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9953
mov dword [esp + 0x14], 0x200
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 0x400
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9980
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 0x400
jmp 0x4b9dba
movzx ebx, al
movzx ecx, byte [ebx + 0x4d8650]
and ecx, 0x10
jne 0x4b99b0
mov dword [esp + 0x14], 0x800
jmp 0x4b9dba
mov ebx, dword [esp + 0x20]
mov edx, ebx
lea ecx, [edx + ebx*4]
mov dword [esp + 0x20], ecx
add ecx, ecx
mov dword [esp + 0x20], ecx
add eax, 0xffffffd0
add dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x20], eax
cmp eax, 0x7fff
jle 0x4b99e2
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov edx, dword [esp + 0x24]
mov edi, edx
sub edi, 1
je 0x4b9a50
sub edi, 1
je 0x4b9aa0
sub edi, 2
je 0x4b9ad0
sub edi, 4
je 0x4b9bb6
sub edi, 8
je 0x4b9c76
sub edi, 0x10
je 0x4b9cc0
sub edi, 0x20
je 0x4b9d06
sub edi, 0xc0
je 0x4b9d50
jmp 0x4b9dba
mov eax, dword [esp + 0x18]
mov byte [eax], 0
mov byte [eax + 1], 0
mov byte [eax + 2], 0
mov byte [eax + 3], 0
mov byte [eax + 4], 0
mov byte [eax + 5], 0
mov byte [eax + 6], 0
mov byte [eax + 7], 0
mov dword [esp + 0x28], 2
mov dword [esp + 0x24], 2
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9ac0
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x24], 4
jmp 0x4b9dba
movzx ebx, al
movzx ecx, byte [ebx + 0x4d8650]
and ecx, 0x20
jne 0x4b9b10
cmp eax, dword [esp + 0x34]
jne 0x4b9b03
mov dword [esp + 0x24], 8
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x24], 0x10
jmp 0x4b9dba
cmp dword [esp + 0x28], 0x11
jge 0x4b9ba0
inc dword [esp + 0x38]
mov esi, dword [esp + 0x28]
cmp esi, 0x80000000
sbb esi, 0xffffffff
sar esi, 1
mov edx, dword [esp + 0x18]
mov cl, byte [edx + esi]
mov byte [esp + 8], cl
cmp eax, 0xffffffff
jne 0x4b9b43
or eax, 0xffffffff
jmp 0x4b9b4a
movzx eax, byte [ebx + 0x4d8850]
mov ecx, eax
cmp eax, 0x41
jl 0x4b9b56
add ecx, 0xffffffc9
jmp 0x4b9b59
sub ecx, 0x30
mov eax, dword [esp + 0x28]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
je 0x4b9b70
or byte [esp + 8], cl
jmp 0x4b9b7a
movzx eax, cl
shl eax, 4
or byte [esp + 8], al
mov cl, byte [esp + 8]
mov eax, dword [esp + 0x18]
mov byte [eax + esi], cl
inc dword [esp + 0x28]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
movzx ebx, al
movzx edx, byte [ebx + 0x4d8650]
and edx, 0x20
jne 0x4b9bd2
mov dword [esp + 0x24], 0x10
jmp 0x4b9dba
cmp dword [esp + 0x28], 0x11
jge 0x4b9c60
mov edi, dword [esp + 0x28]
cmp edi, 0x80000000
sbb edi, 0xffffffff
sar edi, 1
mov edx, dword [esp + 0x18]
mov cl, byte [edx + edi]
mov byte [esp + 0xc], cl
cmp eax, 0xffffffff
jne 0x4b9c01
or eax, 0xffffffff
jmp 0x4b9c08
movzx eax, byte [ebx + 0x4d8850]
mov ecx, eax
cmp eax, 0x41
jl 0x4b9c14
add ecx, 0xffffffc9
jmp 0x4b9c17
sub ecx, 0x30
mov eax, dword [esp + 0x28]
cdq
and eax, 1
xor eax, edx
sub eax, edx
test eax, eax
je 0x4b9c30
or byte [esp + 0xc], cl
jmp 0x4b9c3a
movzx eax, cl
shl eax, 4
or byte [esp + 0xc], al
mov cl, byte [esp + 0xc]
mov eax, dword [esp + 0x18]
mov byte [eax + edi], cl
inc dword [esp + 0x28]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
cmp eax, 0xffffffff
jne 0x4b9c80
or edx, 0xffffffff
jmp 0x4b9c8a
movzx edx, al
movzx edx, byte [edx + 0x4d8850]
cmp edx, 0x50
jne 0x4b9cb1
mov dword [esp + 0x24], 0x20
inc dword [esp + 0x2c]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x14], 0x800
jmp 0x4b9dba
inc dword [esp + 0x2c]
cmp eax, 0x2d
jne 0x4b9cd3
mov dword [esp + 0x4c], 1
jmp 0x4b9ce8
cmp eax, 0x2b
je 0x4b9ce8
push 1
push eax
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
dec dword [esp + 0x2c]
mov dword [esp + 0x24], 0x40
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
movzx ecx, al
movzx ebx, byte [ecx + 0x4d8650]
and ebx, 0x10
jne 0x4b9d22
mov dword [esp + 0x14], 0x1000
jmp 0x4b9dba
cmp eax, 0x30
jne 0x4b9d46
inc dword [esp + 0x2c]
mov dword [esp + 0x24], pe_nt_image_headers32
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
jmp 0x4b9dba
mov dword [esp + 0x24], 0x100
jmp 0x4b9dba
movzx edx, al
movzx ecx, byte [edx + 0x4d8650]
and ecx, 0x10
jne 0x4b9d70
mov dword [esp + 0x14], 0x800
jmp 0x4b9dba
mov ebx, dword [esp + 0x1c]
mov edx, ebx
lea ecx, [edx + ebx*4]
mov dword [esp + 0x1c], ecx
add ecx, ecx
mov dword [esp + 0x1c], ecx
add eax, 0xffffffd0
add dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x20], 0x7fff
jle 0x4b9da5
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
inc dword [esp + 0x2c]
inc dword [esp + 0x10]
push 0
push 0
push dword [ebp + 0x10]
call dword [ebp + 0xc]
add esp, 0xc
mov ecx, dword [esp + 0x10]
cmp ecx, dword [ebp + 8]
jg 0x4b9dd8
cmp eax, 0xffffffff
je 0x4b9dd8
mov ebx, dword [esp + 0x14]
and ebx, 0x1800
je 0x4b9377
and dword [esp + 0x14], 0xe2c
cmp dword [esp + 0x14], 0
jne 0x4b9df2
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 0
jmp 0x4b9e09
dec dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x3c]
mov dword [esp + 0x10], ecx
mov edx, ecx
mov ecx, dword [ebp + 0x14]
mov dword [ecx], edx
push 1
push eax
push dword [ebp + 0x10]
call dword [ebp + 0xc]
fldz
add esp, 0xc
cmp dword [esp + 0x24], 0
jne 0x4b9f75
cmp dword [esp + 0x44], 0
je 0x4b9e35
mov eax, dword [esp + 0x20]
mov dword [esp + 0x20], eax
neg dword [esp + 0x20]
movzx ecx, byte [esp + 0x54]
mov eax, ecx
lea edi, [esp + 0x50]
add edi, ecx
add edi, 5
jmp 0x4b9e4b
inc dword [esp + 0x30]
sub eax, 1
jb 0x4b9e56
dec edi
cmp byte [edi], 0x30
je 0x4b9e47
inc al
mov byte [esp + 0x54], al
cmp byte [esp + 0x54], 0
jne 0x4b9e73
mov dl, byte [esp + 0x54]
inc byte [esp + 0x54]
movzx eax, dl
mov byte [esp + eax + 0x55], 0x30
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x30]
mov dword [esp + 0x20], eax
cmp eax, 0xffff8000
jl 0x4b9e8d
cmp eax, 0x7fff
jle 0x4b9e96
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
mov eax, dword [ebp + 0x18]
cmp dword [eax], 0
je 0x4b9ed6
cmp dword [esp + 0x44], 0
je 0x4b9eb5
fstp st(0)
fld qword [0x4e5ea8]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret
cmp dword [esp + 0x40], 0
je 0x4b9ec6
fld qword [0x4d7f58]
fchs
jmp 0x4b9ecc
fld qword [0x4d7f58]
fstp st(1)
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret
mov ax, word [esp + 0x20]
mov word [esp + 0x52], ax
lea eax, [esp + 0x50]
push eax
fstp st(0)
call fcn.004b6160
pop ecx
fstp qword [esp + 0x78]
fld qword [0x4e5ea8]
fcomp qword [esp + 0x78]
fnstsw ax
and ah, 0x44
cmp ah, 0x40
je 0x4b9f24
fld qword [esp + 0x78]
fcomp qword [0x4d7f68]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4b9f24
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
jmp 0x4b9f51
fld qword [esp + 0x78]
fcomp qword [0x4d7f70]
fnstsw ax
test ah, 0x45
jne 0x4b9f51
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
mov esi, dword [0x4d7f58]
mov eax, dword [0x4d7f5c]
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], eax
cmp dword [esp + 0x40], 0
je 0x4b9f69
cmp dword [esp + 0x14], 0
je 0x4b9f69
fld qword [esp + 0x78]
fchs
fstp qword [esp + 0x78]
fld qword [esp + 0x78]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret
lea ecx, [esp + 0x78]
fld qword [esp + 0x78]
fcomp qword [0x4e5ea8]
fnstsw ax
and ah, 0x44
cmp ah, 0x40
je 0x4ba097
cmp dword [esp + 0x4c], 0
je 0x4b9fbc
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
neg dword [esp + 0x1c]
jmp 0x4b9fbc
mov ebx, dword [ecx]
mov esi, dword [ecx + 4]
mov eax, esi
shrd ebx, esi, 1
shr esi, 1
mov dword [ecx], ebx
mov dword [ecx + 4], esi
inc dword [esp + 0x1c]
lea edx, [esp + 0x78]
movsx eax, word [edx]
and eax, 0xf0
cmp eax, 0x10
jne 0x4b9fa6
dec dword [esp + 0x38]
shl dword [esp + 0x38], 2
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x38]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x78]
and word [eax], 0xf
movsx edi, word [esp + 0x1c]
add edi, 0x3ff
shl edi, 4
lea eax, [esp + 0x78]
or word [eax], di
mov ebx, dword [esp + 0x3c]
add ebx, dword [esp + 0x48]
add ebx, dword [esp + 0x28]
inc ebx
add ebx, dword [esp + 0x2c]
mov eax, dword [ebp + 0x14]
mov dword [eax], ebx
fld qword [0x4e5ea8]
fcomp qword [esp + 0x78]
fnstsw ax
and ah, 0x44
cmp ah, 0x40
je 0x4ba058
fld qword [esp + 0x78]
fcomp qword [0x4d7f68]
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x4ba058
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
jmp 0x4ba085
fld qword [esp + 0x78]
fcomp qword [0x4d7f70]
fnstsw ax
test ah, 0x45
jne 0x4ba085
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
mov edx, dword [0x4d7f58]
mov eax, dword [0x4d7f5c]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], eax
cmp dword [esp + 0x40], 0
je 0x4ba0a7
lea eax, [esp + 0x78]
or word [eax], 0x8000
jmp 0x4ba0a7
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
fstp st(0)
fld qword [esp + 0x78]
lea esp, [ebp - 0xc]
pop edi
pop esi
pop ebx
pop ebp
ret