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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x160
mov esi, esp
mov eax, dword [0x59d024]
xor eax, ebp
mov dword [esi + 0x158], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x120], xmm0
mov dword [esi + 0x11c], edi
mov edi, dword [0x58fc80]
mov dword [esi + 0x118], eax
mov eax, dword [0x58fc84]
sub esp, 0x24
movsd xmm0, qword [esi + 0x118]
movsd qword [esp + 0x10], xmm0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edi
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
lea eax, [esi + 0x120]
mov dword [esp], eax
mov dword [esp + 0x20], 0
mov dword [esp + 4], 0x42
call fcn.004c5990
add esp, 0x24
cmp dword [esi + 0x120], 0
je 0x4c294d
mov dword [esi + 0x10c], esp
push eax
sub esp, 0x14
mov ebx, esp
movzx eax, byte [esi + 0x12c]
mov byte [esi + 0x20], al
mov eax, dword [esi + 0x120]
mov dword [esi + 8], eax
mov edi, dword [esi + 0x124]
mov ecx, ebx
push 0
call fcn.004acdc0
mov dword [esi + 0x104], esp
mov eax, dword [esi + 8]
mov dword [ebx + 4], eax
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], 0
movzx eax, byte [esi + 0x20]
mov byte [ebx + 0x10], al
mov eax, dword [ebp + 0x10]
mov dword [ebx + 0x14], eax
sub esp, 0x14
mov edi, esp
mov ecx, edi
push ebx
call fcn.004acdf0
movsd xmm0, qword [ebx + 4]
mov dword [esi + 0x108], ebx
movsd xmm1, qword [ebx + 9]
movsd qword [edi + 4], xmm0
movsd qword [edi + 9], xmm1
mov ecx, dword [edi + 4]
push 0x23
call fcn.004acbb0
mov dword [esi + 0x20], eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esi + 0xc], ecx
mov dword [esi + 0x13c], ecx
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
mov dword [esi + 0x140], ecx
mov eax, dword [eax + 0xc]
mov dword [esi + 0x144], eax
mov dword [esi + 0x70], edi
mov eax, dword [edi + 8]
lea edi, [eax + 0x68]
mov ecx, dword [eax + 0x68]
cmp ecx, 4
je 0x4c26b7
lea edx, [eax + 0x70]
mov ebx, dword [eax + 0x70]
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0x1c], edx
lea edx, [eax + 0x78]
mov dword [esi + 4], edx
mov edx, dword [eax + 0x78]
cmp edx, 4
je 0x4c296d
mov dword [esi + 0x14], edx
lea edx, [eax + 0x80]
mov dword [esi + 0x28], edx
mov edx, dword [eax + 0x80]
cmp edx, 4
je 0x4c29ba
mov dword [esi + 0x10], ebx
mov dword [esi + 0x2c], edx
lea edx, [eax + 0x88]
mov ebx, dword [eax + 0x88]
mov dword [esi + 0x18], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0x100], edx
lea edx, [eax + 0x90]
mov dword [esi + 0x24], edx
mov edx, dword [eax + 0x90]
cmp edx, 4
je 0x4c29d5
mov dword [esi + 0xfc], edx
lea edx, [eax + 0x98]
mov ebx, dword [eax + 0x98]
mov dword [esi + 0xf8], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xf4], edx
lea edx, [eax + 0xa0]
mov dword [esi + 0x6c], edx
mov edx, dword [eax + 0xa0]
cmp edx, 4
je 0x4c29dd
mov dword [esi + 0xf0], edx
lea edx, [eax + 0xa8]
mov ebx, dword [eax + 0xa8]
mov dword [esi + 0xec], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xe8], edx
lea edx, [eax + 0xb0]
mov dword [esi + 0x68], edx
mov edx, dword [eax + 0xb0]
cmp edx, 4
je 0x4c2a3b
mov dword [esi + 0xe4], edx
lea edx, [eax + 0xb8]
mov ebx, dword [eax + 0xb8]
mov dword [esi + 0xe0], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xdc], edx
lea edx, [eax + 0xc0]
mov dword [esi + 0x64], edx
mov edx, dword [eax + 0xc0]
cmp edx, 4
je 0x4c2ad5
mov dword [esi + 0xd8], edx
lea edx, [eax + 0xc8]
mov ebx, dword [eax + 0xc8]
mov dword [esi + 0xd4], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xd0], edx
lea edx, [eax + 0xd0]
mov dword [esi + 0x60], edx
mov edx, dword [eax + 0xd0]
cmp edx, 4
je 0x4c2ae9
mov dword [esi + 0xcc], edx
lea edx, [eax + 0xd8]
mov ebx, dword [eax + 0xd8]
mov dword [esi + 0xc8], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xc4], edx
lea edx, [eax + 0xe0]
mov dword [esi + 0x5c], edx
mov edx, dword [eax + 0xe0]
cmp edx, 4
je 0x4c2b0b
mov dword [esi + 0xc0], edx
lea edx, [eax + 0xe8]
mov ebx, dword [eax + 0xe8]
mov dword [esi + 0xbc], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xb8], edx
lea edx, [eax + 0xf0]
mov dword [esi + 0x58], edx
mov edx, dword [eax + 0xf0]
cmp edx, 4
je 0x4c2b34
mov dword [esi + 0xb4], edx
lea edx, [eax + 0xf8]
mov ebx, dword [eax + 0xf8]
mov dword [esi + 0xb0], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xac], edx
lea edx, [eax + 0x100]
mov dword [esi + 0x54], edx
mov edx, dword [eax + 0x100]
cmp edx, 4
je 0x4c2b3c
mov dword [esi + 0xa8], edx
lea edx, [eax + 0x108]
mov ebx, dword [eax + 0x108]
mov dword [esi + 0xa4], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0xa0], edx
lea edx, [eax + 0x110]
mov dword [esi + 0x50], edx
mov edx, dword [eax + 0x110]
mov dword [esi + 0x9c], edx
cmp edx, 4
je 0x4c2b44
lea edx, [eax + 0x118]
mov ebx, dword [eax + 0x118]
mov dword [esi + 0x98], ebx
cmp ebx, 4
je 0x4c26b5
mov dword [esi + 0x94], edx
lea edx, [eax + 0x120]
mov dword [esi + 0x4c], edx
mov ebx, dword [eax + 0x120]
cmp ebx, 4
je 0x4c2b4c
lea edx, [eax + 0x128]
mov dword [esi + 0x48], edx
mov edx, dword [eax + 0x128]
mov dword [esi + 0x90], edx
cmp edx, 4
je 0x4c2b54
lea edx, [eax + 0x130]
mov dword [esi + 0x44], edx
mov edx, dword [eax + 0x130]
mov dword [esi + 0x8c], edx
cmp edx, 4
je 0x4c2b5c
lea edx, [eax + 0x138]
mov dword [esi + 0x40], edx
mov edx, dword [eax + 0x138]
mov dword [esi + 0x88], edx
cmp edx, 4
je 0x4c2b64
lea edx, [eax + 0x140]
mov dword [esi + 0x3c], edx
mov edx, dword [eax + 0x140]
mov dword [esi + 0x84], edx
cmp edx, 4
je 0x4c2b6c
lea edx, [eax + 0x148]
mov dword [esi + 0x38], edx
mov edx, dword [eax + 0x148]
mov dword [esi + 0x80], edx
cmp edx, 4
je 0x4c2b74
lea edx, [eax + 0x150]
mov dword [esi + 0x34], edx
mov edx, dword [eax + 0x150]
mov dword [esi + 0x7c], edx
cmp edx, 4
je 0x4c2b7c
lea edx, [eax + 0x158]
mov dword [esi + 0x30], edx
mov edx, dword [eax + 0x158]
mov dword [esi + 0x78], edx
cmp edx, 4
je 0x4c2b84
mov edx, dword [eax + 0x160]
add eax, 0x160
mov dword [esi + 0x74], edx
cmp edx, 4
je 0x4c2b8c
test ecx, ecx
je 0x4c266c
mov edi, dword [esi + 0x1c]
cmp dword [esi + 0x10], 0
je 0x4c266c
mov edi, dword [esi + 4]
cmp dword [esi + 0x14], 0
je 0x4c266c
mov edi, dword [esi + 0x28]
cmp dword [esi + 0x2c], 0
je 0x4c266c
mov edi, dword [esi + 0x100]
cmp dword [esi + 0x18], 0
je 0x4c266c
mov edi, dword [esi + 0x24]
cmp dword [esi + 0xfc], 0
je 0x4c266c
mov edi, dword [esi + 0xf4]
cmp dword [esi + 0xf8], 0
je 0x4c266c
mov edi, dword [esi + 0x6c]
cmp dword [esi + 0xf0], 0
je 0x4c266c
mov edi, dword [esi + 0xe8]
cmp dword [esi + 0xec], 0
je 0x4c266c
mov edi, dword [esi + 0x68]
cmp dword [esi + 0xe4], 0
je 0x4c266c
mov edi, dword [esi + 0xdc]
cmp dword [esi + 0xe0], 0
je 0x4c266c
mov edi, dword [esi + 0x64]
cmp dword [esi + 0xd8], 0
je 0x4c266c
mov edi, dword [esi + 0xd0]
cmp dword [esi + 0xd4], 0
je 0x4c266c
mov edi, dword [esi + 0x60]
cmp dword [esi + 0xcc], 0
je 0x4c266c
mov edi, dword [esi + 0xc4]
cmp dword [esi + 0xc8], 0
je 0x4c266c
mov edi, dword [esi + 0x5c]
cmp dword [esi + 0xc0], 0
je 0x4c266c
mov edi, dword [esi + 0xb8]
cmp dword [esi + 0xbc], 0
je 0x4c266c
mov edi, dword [esi + 0x58]
cmp dword [esi + 0xb4], 0
je 0x4c266c
mov edi, dword [esi + 0xac]
cmp dword [esi + 0xb0], 0
je 0x4c266c
mov edi, dword [esi + 0x54]
cmp dword [esi + 0xa8], 0
je 0x4c266c
mov edi, dword [esi + 0xa0]
cmp dword [esi + 0xa4], 0
je 0x4c266c
mov edi, dword [esi + 0x50]
cmp dword [esi + 0x9c], 0
je 0x4c266c
mov edi, dword [esi + 0x94]
cmp dword [esi + 0x98], 0
je 0x4c266c
mov edi, dword [esi + 0x4c]
test ebx, ebx
je 0x4c266c
mov edi, dword [esi + 0x48]
cmp dword [esi + 0x90], 0
je 0x4c266c
mov edi, dword [esi + 0x44]
cmp dword [esi + 0x8c], 0
je 0x4c266c
mov edi, dword [esi + 0x40]
cmp dword [esi + 0x88], 0
je 0x4c266c
mov edi, dword [esi + 0x3c]
cmp dword [esi + 0x84], 0
je 0x4c266c
mov edi, dword [esi + 0x38]
cmp dword [esi + 0x80], 0
je 0x4c266c
mov edi, dword [esi + 0x34]
cmp dword [esi + 0x7c], 0
je 0x4c266c
mov edi, dword [esi + 0x30]
cmp dword [esi + 0x78], 0
je 0x4c266c
mov edi, eax
cmp dword [esi + 0x74], 0
jne 0x4c2cc6
mov dword [edi], 4
lea ebx, [edi + 4]
push 0x18
call fcn.004eca5e
add esp, 4
xorps xmm0, xmm0
movups xmmword [eax + 4], xmm0
mov dword [eax + 0x14], 0x3f800000
mov dword [eax], 0x58407c
mov ecx, dword [edi + 4]
mov dword [edi + 4], eax
test ecx, ecx
je 0x4c26bc
mov edi, ecx
mov eax, dword [ecx]
mov ecx, dword [eax]
mov dword [esi + 4], ecx
call dword [section..00cfg]
mov ecx, edi
push 1
call dword [esi + 4]
jmp 0x4c26bc
mov edi, edx
add edi, 4
mov ebx, edi
mov edi, dword [ebx]
lea eax, [edi + 4]
mov dword [esi + 0x1c], eax
mov eax, dword [edi + 0x10]
mov dword [esi + 0x2c], eax
mov ebx, dword [esi + 0x144]
push dword [esi + 0xc]
push dword [esi + 8]
call fcn.004b4060
add esp, 8
mov dword [esi + 0x28], ebx
push ebx
push eax
call fcn.004b4060
add esp, 8
mov ebx, eax
mov dword [esi + 0x10], edi
mov edi, dword [edi + 8]
test edi, edi
mov dword [esi + 4], edi
je 0x4c2add
mov ecx, edi
shr ecx, 1
and ecx, 0x55555555
mov eax, edi
sub eax, ecx
mov ecx, eax
and ecx, 0x33333333
shr eax, 2
and eax, 0x33333333
add eax, ecx
mov ecx, eax
shr ecx, 4
add ecx, eax
and ecx, 0xf0f0f0f
imul ecx, ecx, 0x1010101
shr ecx, 0x18
cmp ecx, 1
jbe 0x4c29b0
mov edx, ebx
cmp ebx, edi
jb 0x4c274a
mov eax, ebx
xor edx, edx
div dword [esi + 4]
mov eax, dword [esi + 0x1c]
mov eax, dword [eax]
mov dword [esi + 0x14], edx
mov eax, dword [eax + edx*4]
test eax, eax
je 0x4c27b7
mov edi, dword [eax]
test edi, edi
je 0x4c27b7
mov eax, dword [esi + 4]
lea edx, [eax - 1]
mov eax, dword [edi + 4]
cmp eax, ebx
jne 0x4c2790
mov eax, dword [esi + 8]
cmp dword [edi + 0xc], eax
jne 0x4c2788
mov eax, dword [esi + 0xc]
cmp dword [edi + 8], eax
jne 0x4c2788
mov eax, dword [esi + 0x28]
cmp dword [edi + 0x10], eax
je 0x4c2897
mov edi, dword [edi]
test edi, edi
jne 0x4c2765
jmp 0x4c27b7
cmp ecx, 1
jbe 0x4c2a09
mov dword [esi + 0x24], edx
mov dword [esi + 0x18], ebx
mov ebx, dword [esi + 4]
cmp eax, ebx
jb 0x4c27ac
xor edx, edx
div ebx
mov eax, edx
mov ebx, dword [esi + 0x18]
mov edx, dword [esi + 0x24]
cmp eax, dword [esi + 0x14]
je 0x4c276c
mov edi, dword [esi + 0x2c]
inc edi
push 0x18
call fcn.004eca5e
add esp, 4
mov ecx, eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 8], eax
mov eax, dword [esi + 8]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x28]
mov dword [ecx + 0x10], eax
mov eax, edi
mov dword [ecx + 0x14], edi
mov dword [esi + 8], ecx
mov dword [ecx + 4], ebx
mov ecx, dword [esi + 0x10]
mov eax, dword [ecx + 0x10]
inc eax
movd xmm0, eax
movq xmm2, qword [0x584c90]
por xmm0, xmm2
subsd xmm0, xmm2
cvtsd2ss xmm0, xmm0
movss xmm1, dword [ecx + 0x14]
mov eax, dword [esi + 4]
test eax, eax
je 0x4c2a50
movd xmm3, eax
por xmm3, xmm2
subsd xmm3, xmm2
xorps xmm2, xmm2
cvtsd2ss xmm2, xmm3
mulss xmm2, xmm1
ucomiss xmm0, xmm2
ja 0x4c2a50
mov edx, dword [esi + 8]
mov eax, dword [esi + 0x1c]
mov ecx, dword [eax]
mov ebx, dword [esi + 0x14]
mov eax, dword [ecx + ebx*4]
test eax, eax
jne 0x4c2a10
mov dword [esi + 0xc], ecx
mov ecx, edx
mov edx, dword [esi + 0x10]
mov eax, dword [edx + 0xc]
mov dword [ecx], eax
lea eax, [edx + 0xc]
mov dword [edx + 0xc], ecx
mov edx, dword [esi + 0xc]
mov dword [edx + ebx*4], eax
mov eax, dword [ecx]
test eax, eax
je 0x4c2a16
mov eax, dword [eax + 4]
mov ebx, dword [esi + 4]
lea ecx, [ebx - 1]
test ebx, ecx
je 0x4c2b04
cmp eax, ebx
jb 0x4c2887
xor edx, edx
div ebx
mov eax, edx
shl eax, 2
mov ecx, dword [esi + 0x1c]
add eax, dword [ecx]
mov edx, dword [esi + 8]
jmp 0x4c2a14
mov edi, dword [edi + 0x14]
mov eax, dword [esi + 0x20]
cmp dword [eax + 8], 0
jne 0x4c2b13
mov dword [esi + 0x148], 0xffffffff
mov dword [esi + 0x153], 0xffffffff
mov dword [esi + 0x150], 0xffffffff
mov dword [esi + 0x14c], 0xffffffff
mov byte [esi + 0x148], 0x10
lea ecx, [esi + 0x149]
lea edx, [esi + 0x148]
mov eax, edi
cmp edi, 0x80
jae 0x4c2975
mov ebx, edx
mov eax, edi
mov byte [ecx], al
sub ebx, edx
mov eax, dword [esi + 0x20]
mov edi, dword [eax]
mov eax, dword [edi + 0xc]
lea edx, [eax + ebx]
add edx, 2
add ebx, 2
cmp edx, dword [edi + 8]
ja 0x4c2b20
cmp ebx, 2
jne 0x4c29c2
movzx ecx, word [esi + 0x148]
mov word [eax], cx
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0x20]
add dword [eax + 0x10], ebx
mov ecx, dword [esi + 0x70]
call fcn.004ad930
mov esp, dword [esi + 0x104]
mov ecx, dword [esi + 0x108]
call fcn.004ad930
mov esp, dword [esi + 0x10c]
lea ecx, [esi + 0x120]
call fcn.004c58e0
mov ecx, dword [esi + 0x158]
xor ecx, ebp
call fcn.004ed092
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, dword [esi + 4]
jmp 0x4c26b7
xor eax, eax
xor ebx, ebx
mov dword [esi + 8], eax
mov edx, edi
mov eax, edx
or al, 0x80
mov edi, dword [esi + 8]
shld edi, edx, 0x19
mov byte [ecx], al
shr ebx, 7
inc ecx
mov eax, 0x3fff
cmp eax, edx
mov eax, 0
sbb eax, dword [esi + 8]
mov eax, ebx
jb 0x4c2979
lea ebx, [ecx - 1]
lea edx, [esi + 0x148]
jmp 0x4c28f2
lea edx, [edi - 1]
and edx, ebx
jmp 0x4c274a
mov edi, dword [esi + 0x28]
jmp 0x4c26b7
cmp ebx, 3
jne 0x4c29e5
mov cl, byte [esi + 0x14a]
mov byte [eax + 2], cl
jmp 0x4c291b
mov edi, dword [esi + 0x24]
jmp 0x4c26b7
mov edi, dword [esi + 0x6c]
jmp 0x4c26b7
cmp ebx, 4
je 0x4c2a43
lea ecx, [esi + 0x148]
push ebx
push ecx
push eax
mov dword [esi + 8], edx
call fcn.004efd90
add esp, 0xc
mov eax, dword [esi + 8]
mov dword [edi + 0xc], eax
jmp 0x4c2928
and eax, edx
jmp 0x4c27b2
mov ecx, dword [eax]
mov dword [edx], ecx
mov dword [eax], edx
mov eax, dword [esi + 0x10]
inc dword [eax + 0x10]
mov eax, dword [esi + 0x70]
mov eax, dword [eax + 8]
add eax, 0x48
lea ecx, [esi + 0x13c]
push ecx
push edi
push eax
call fcn.00488df0
add esp, 0xc
jmp 0x4c289a
mov edi, dword [esi + 0x68]
jmp 0x4c26b7
mov ecx, dword [esi + 0x148]
mov dword [eax], ecx
jmp 0x4c2925
mov dword [esi + 0x18], ebx
divss xmm0, xmm1
cvtss2sd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
mov ebx, eax
call fcn.0051c4a0
add esp, 8
fstp dword [esi + 0x114]
movss xmm0, dword [esi + 0x114]
cvttss2si eax, xmm0
mov edx, eax
sar edx, 0x1f
subss xmm0, dword [0x5735e0]
cvttss2si ecx, xmm0
and ecx, edx
or ecx, eax
lea edx, [ebx + ebx]
cmp ebx, 3
jae 0x4c2af1
xor eax, eax
inc eax
or eax, edx
cmp eax, ecx
cmovbe eax, ecx
mov ebx, 2
cmp eax, 1
je 0x4c2b95
lea ecx, [eax - 1]
test eax, ecx
je 0x4c2b93
push eax
call fcn.004af5d0
add esp, 4
mov ebx, eax
mov eax, dword [esi + 0x10]
mov eax, dword [eax + 8]
jmp 0x4c2b98
mov edi, dword [esi + 0x64]
jmp 0x4c26b7
mov dword [esi + 0x14], 0xffffffff
jmp 0x4c27b7
mov edi, dword [esi + 0x60]
jmp 0x4c26b7
mov ebx, dword [esi + 4]
lea eax, [ebx - 1]
mov dword [esi + 0xc], eax
xor eax, eax
test dword [esi + 0xc], ebx
setne al
jmp 0x4c2a9f
and eax, ecx
jmp 0x4c2887
mov edi, dword [esi + 0x5c]
jmp 0x4c26b7
mov ecx, dword [esi + 0x20]
call fcn.004ac970
jmp 0x4c28a7
lea eax, [esi + 0x148]
mov ecx, edi
push ebx
push eax
call fcn.004ad2e0
jmp 0x4c2928
mov edi, dword [esi + 0x58]
jmp 0x4c26b7
mov edi, dword [esi + 0x54]
jmp 0x4c26b7
mov edi, dword [esi + 0x50]
jmp 0x4c26b7
mov edi, dword [esi + 0x4c]
jmp 0x4c26b7
mov edi, dword [esi + 0x48]
jmp 0x4c26b7
mov edi, dword [esi + 0x44]
jmp 0x4c26b7
mov edi, dword [esi + 0x40]
jmp 0x4c26b7
mov edi, dword [esi + 0x3c]
jmp 0x4c26b7
mov edi, dword [esi + 0x38]
jmp 0x4c26b7
mov edi, dword [esi + 0x34]
jmp 0x4c26b7
mov edi, dword [esi + 0x30]
jmp 0x4c26b7
mov edi, eax
jmp 0x4c26b7
mov ebx, eax
mov eax, dword [esi + 4]
cmp ebx, eax
jbe 0x4c2bdc
mov ecx, dword [esi + 0x1c]
push ebx
call fcn.004b4fa0
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 8]
lea eax, [ecx - 1]
test ecx, eax
mov dword [esi + 4], ecx
je 0x4c2bd1
mov eax, dword [esi + 0x18]
cmp eax, ecx
mov ebx, dword [esi + 8]
jb 0x4c2ca0
xor edx, edx
div ecx
mov dword [esi + 0x14], edx
mov edx, ebx
jmp 0x4c2836
and eax, dword [esi + 0x18]
mov dword [esi + 0x14], eax
jmp 0x4c2833
mov dword [esi + 4], eax
jae 0x4c2ba5
mov eax, dword [esi + 0x10]
movss xmm0, dword [eax + 0x10]
orpd xmm0, xmmword [0x584c80]
subsd xmm0, qword [0x584c90]
cvtsd2ss xmm0, xmm0
divss xmm0, dword [eax + 0x14]
cvtss2sd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
call fcn.0051c4a0
add esp, 8
fstp dword [esi + 0x110]
movss xmm0, dword [esi + 0x110]
cvttss2si eax, xmm0
mov ecx, eax
subss xmm0, dword [0x5735e0]
cvttss2si edx, xmm0
sar ecx, 0x1f
and edx, ecx
or edx, eax
mov dword [esi + 0xc], edx
cmp dword [esi + 4], 3
jb 0x4c2ca8
mov eax, dword [esi + 4]
mov ecx, eax
shr ecx, 1
and ecx, 0x55555555
sub eax, ecx
mov ecx, eax
mov edx, 0x33333333
and ecx, edx
shr eax, 2
mov edx, 0x33333333
and eax, edx
add eax, ecx
mov ecx, eax
shr ecx, 4
add ecx, eax
and ecx, 0xf0f0f0f
imul eax, ecx, 0x1010101
shr eax, 0x18
cmp eax, 1
ja 0x4c2ca8
mov edx, dword [esi + 0xc]
lea eax, [edx - 1]
bsr ecx, eax
xor ecx, 0x1f
neg cl
xor eax, eax
inc eax
shl eax, cl
cmp edx, 2
cmovb eax, edx
jmp 0x4c2cb3
mov dword [esi + 0x14], eax
jmp 0x4c2bca
push dword [esi + 0xc]
call fcn.004af5d0
add esp, 4
cmp ebx, eax
cmovbe ebx, eax
cmp ebx, dword [esi + 4]
jb 0x4c2b9c
jmp 0x4c2ba5
call fcn.004ff483
push dword [eax]
call fcn.00508c3b
add esp, 4
mov edi, eax
call fcn.004ff483
mov ebx, dword [eax]
push str....._third_partyperfettoincludeperfetto_tracing_track_event_interned_data_index.h
call fcn.0051da30
add esp, 4
push edi
push ebx
push str.PERFETTO_CHECK_false_
push str._s__errno:__d___s_
push 0xf6
push eax
push 3
call fcn.0051dc90
add esp, 0x1c
int3