Function at 0x4addc4
Capabilities:
Read file via mapping

Disassembly:
dec ecx
add ecx, edi
call fcn.004fc3e1
neg ebx
sub edx, 0x8d89e78a
xor eax, esi
ror edi, 1
xor edx, 0x1900f30e
or esi, dword [0x681a21]
inc ecx
xor ebx, edx
call fcn.0040de89
inc eax
rol eax, 0x10
not edi
sub dword [0x6818f8], ecx
call fcn.00525d99
or dword [0x68188d], ecx
sub dword [0x681542], esi
ror ebx, 0x19
call fcn.004f716f
xor ecx, 0x3fb68d03
xchg ebx, esi
xor edx, 0xfbde71fc
add edx, dword [0x681ab6]
inc edi
or dword [0x68160d], ecx
dec edi
xor edx, 0xfbde71fc
xchg ebx, esi
xor ecx, 0x3fb68d03
call fcn.0044903f
rol ebx, 0x19
not edi
ror eax, 0x10
dec eax
xor ebx, edx
dec ecx
xor edx, 0x1900f30e
rol edi, 1
xor eax, esi
push edx
rol ebx, 0x10
call fcn.004f44c2
add edx, 0xae490293
and dword [0x6813b4], ebx
xchg ecx, edx
or eax, dword [0x681cde]
dec edi
rol eax, 6
add edx, dword [0x681b8b]
call fcn.0047e117
mov dword [0x6818bb], 0x9e25a9f5
ror ecx, 6
and dword [0x6816cb], esi
sub edi, 0xaf735d00
add eax, ebp
dec ecx
xor dword [0x681605], ebx
call fcn.00406292
call fcn.0044e2a6
xor dword [0x681818], eax
inc ecx
sub eax, ebp
add edi, 0xaf735d00
rol ecx, 6
mov dword [0x681313], 0x4aa7c347
call fcn.004c3627
ror eax, 6
inc edi
xchg ecx, edx
add dword [0x6813a6], eax
sub edx, 0xae490293
ror ebx, 0x10
push eax
dec esi
add edi, eax
sub edi, 0xc1bd8057
ror ebx, 1
xor edx, 0x28ff9df9
neg ebx
add ecx, eax
call fcn.00459ae7
xchg edi, eax
dec esi
call fcn.004a2d3c
ror edi, 0x1a
sub esi, esp
call fcn.0054b334
sub dword [0x6814eb], eax
xor ecx, 0x414acbb7
xchg ecx, eax
call fcn.004563e8
xor edi, edx
xor dword [0x6818c6], ebx
and dword [0x681675], eax
add dword [0x6814fb], edx
xor edi, edx
call fcn.004f03d9
xchg ecx, eax
xor ecx, 0x414acbb7
mov dword [0x681609], edi
add esi, esp
rol edi, 0x1a
call fcn.00401f46
inc esi
xchg edi, eax
call fcn.0055a722
sub ecx, eax
neg ebx
xor edx, 0x28ff9df9
rol ebx, 1
add edi, 0xc1bd8057
sub edi, eax
inc esi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
rol edx, 6
xor edi, dword [0x681cc1]
sub ebx, esi
xor ecx, dword [0x681b90]
sub ecx, edi
call fcn.004c8e6d
mov dword [0x6812f2], ecx
inc esi
inc eax
xor dword [0x68166f], ecx
and dword [0x6818e0], ecx
dec eax
dec esi
mov dword [0x6816ea], esi
call fcn.0052eaa7
add ecx, edi
add ebx, esi
ror edx, 6
lea esi, [0x2a5e201a]
or edi, dword [0x681dc4]
neg esi
call fcn.004a8ee3
sub dword [0x681558], esi
xchg esi, eax
add dword [0x681815], ecx
inc edx
call fcn.00567d56
ror ebx, 0x15
xor eax, esp
sub ebx, 0x7aedc0f8
ror ebx, 4
call fcn.004a46de
xor edx, 0xdf486e70
call fcn.0056aa50
call fcn.00566339
xor edx, 0xdf486e70
rol ebx, 4
add ebx, 0x7aedc0f8
xor eax, esp
rol ebx, 0x15
dec edx
xchg esi, eax
and dword [0x68153d], edx
call fcn.00427a93
neg esi
and esi, 0x917bbea4
sub dword [0x6817e8], eax
xchg ebx, eax
sub ecx, 0x2a470645
neg edx
ror ecx, 8
call fcn.004530c5
sub dword [0x6815e5], ebx
call fcn.004fbf50
dec ebx
or edx, dword [0x681d5b]
ror edx, 0x19
xchg edi, edx
and dword [0x681535], ebx
ror esi, 0x1a
rol esi, 0x1a
and dword [0x6818ba], edi
xchg edi, edx
rol edx, 0x19
inc ebx
add dword [0x681337], edx
call fcn.00560122
rol ecx, 8
neg edx
add ecx, 0x2a470645
xchg ebx, eax
add dword [0x681681], ecx
sub esi, 0xffea1200
sub edx, edi
not esi
sub ecx, 0x59bec9ee
dec eax
sub ebx, dword [0x681f25]
add dword [0x681860], ebx
dec ebx
ror edi, 0xe
and dword [0x6813fa], edi
not esi
sub esi, ebx
call fcn.004744e7
call fcn.00527e1d
add esi, ebx
not esi
or dword [0x6815c2], edi
rol edi, 0xe
inc ebx
and dword [0x681458], edi
inc eax
add ecx, 0x59bec9ee
not esi
add edx, edi
mov edi, eax
neg esi
add ecx, 0xaef3fc16
mov dword [0x6816f7], ebx
sub ecx, dword [0x681cca]
add edx, ecx
not edx
xor esi, ebp
dec edx
add dword [0x681339], 0x3fd6dcef
xor edi, 0x6e96b17f
sub esi, dword [0x681f27]
xor esi, esp
add edi, eax
dec edx
add eax, 0x9bc3ab32
or dword [0x6812c3], eax
xor edi, dword [0x681d30]
xor esi, dword [0x681e7a]
add dword [0x681572], 0x445ed438
add esi, 0xd6131d77
call fcn.004f1c0c
call fcn.004c03f9
sub esi, 0xd6131d77
and dword [0x6814b8], 0xd1d155b4
sub eax, 0x9bc3ab32
inc edx
sub edi, eax
xor esi, esp
xor edi, 0x6e96b17f
mov dword [0x68172e], 0x60a1fbed
inc edx
xor esi, ebp
not edx
sub edx, ecx
add dword [0x6817d8], edx
sub ecx, 0xaef3fc16
neg esi
mov ecx, 0x4dde6
ror esi, 2
call fcn.004d2bb0
sub eax, dword [0x681c38]
not ebx
sub eax, dword [0x681ea3]
call fcn.00525d99
add ecx, dword [0x681e36]
xor ebx, ecx
sub esi, edi
rol eax, 8
xor esi, edi
ror ecx, 0x15
add ebx, dword [0x6819d0]
ror edx, 1
xor dword [0x68169b], ebx
not edx
call fcn.004bc87d
neg ecx
call fcn.00533dfb
call fcn.0045573e
neg ecx
call fcn.004a6f76
not edx
or dword [0x681815], ecx
rol edx, 1
rol ecx, 0x15
xor esi, edi
ror eax, 8
add esi, edi
xor ebx, ecx
call fcn.0054f7b9
not ebx
call fcn.004d5c5e
rol esi, 2
rep movsb byte es:[edi], byte [esi]
xor ecx, edx
sub edx, ebx
call fcn.00464fe0
sub esi, ecx
call fcn.00405554
dec eax
xchg ebx, edx
neg edx
sub esi, dword [0x681d7a]
add eax, dword [0x681edf]
not edi
or esi, dword [0x681966]
sub dword [0x6816fa], ecx
xor dword [0x6814ce], edx
ror esi, 0x19
rol esi, 0x19
xor dword [0x68177c], eax
not edi
neg edx
xchg ebx, edx
inc eax
add esi, ecx
call fcn.0041834d
add edx, ebx
xor ecx, edx
call fcn.00440744
xor edi, dword [0x681cd4]
not ecx
xchg esi, edx
rol ecx, 0x18
and dword [0x68131d], esi
xor edx, 0x7c9c0a15
call fcn.0050f491
xor ecx, dword [0x681f38]
inc edi
inc esi
xor edx, 0x70cfa270
xor esi, dword [0x681d1c]
not edx
rol ecx, 0x16
add esi, dword [0x681e97]
xchg edi, esi
xor esi, 0x980a56bc
xor esi, dword [0x681c45]
call fcn.00525d99
xor esi, 0x980a56bc
xchg edi, esi
ror ecx, 0x16
not edx
xor edx, 0x70cfa270
dec esi
dec edi
call fcn.00420961
xor edx, 0x7c9c0a15
or dword [0x68131d], edi
ror ecx, 0x18
xchg esi, edx
not ecx
out 0xf2, al
addps xmm0, xmm7
subsd xmm7, xmm2
subsd xmm6, xmm2
unpcklpd xmm7, xmm7
and eax, 0x7ff0
cmp eax, 0x7ff0
jae 0x4ae828
and edx, 0x7ff0
sub eax, 0x3ff0
add eax, edx
mov edx, 0x40a0
sub edx, eax
sub eax, 0x3c70
or edx, eax
cmp edx, 0x80000000
jae 0x4aebe4
subsd xmm4, xmm6
subsd xmm2, xmm4
movlpd xmm4, qword [0x59fd48]
andpd xmm3, xmm1
andpd xmm4, xmm6
subsd xmm0, xmm2
xorpd xmm2, xmm2
mov edx, 0x4060
pinsrw xmm2, edx, 3
movsd xmm5, xmm3
mulsd xmm3, xmm4
subsd xmm6, xmm4
subsd xmm1, xmm5
mulsd xmm3, xmm2
mulsd xmm5, xmm6
movapd xmm2, xmmword [0x5a5890]
mulsd xmm4, xmm1
cvtsd2si eax, xmm3
mulsd xmm6, xmm1
movapd xmm1, xmmword [0x5a58a0]
addsd xmm5, xmm4
pshufd xmm4, xmm6, 0xee
addsd xmm5, xmm6
mov edx, 0x1ff7f
sub edx, eax
add eax, 0x1e1ff
or edx, eax
sub eax, 0x1e1ff
cmp edx, 0
jle 0x4ae982
add ecx, eax
and eax, 0x7f
and ecx, 0xffffff80
add ecx, 0x1ff80
addsd xmm4, xmm0
movsd xmm0, xmm3
addsd xmm3, qword [0x59fce0]
mulpd xmm2, xmm7
subsd xmm3, qword [0x59fce0]
mulpd xmm7, xmm7
subsd xmm0, xmm3
add eax, eax
add eax, eax
add eax, eax
add eax, eax
movapd xmm3, xmmword [eax + 0x5a58b0]
movapd xmm6, xmmword [0x59fd20]
mulpd xmm1, xmm7
addpd xmm2, xmm1
pshufd xmm1, xmm2, 0xee
mulsd xmm2, xmm7
xorpd xmm7, xmm7
mov edx, 0x3f80
addsd xmm2, xmm1
pinsrw xmm7, edx, 3
addsd xmm2, xmm4
movlpd xmm4, qword [0x59fd40]
movd xmm1, ecx
mulsd xmm2, qword [esp + 8]
mulsd xmm0, xmm7
psllq xmm1, 0x2d
pshufd xmm1, xmm1, 0x44
movapd xmm7, xmmword [0x59fd30]
addsd xmm5, xmm2
mulpd xmm3, xmm1
addsd xmm0, xmm5
unpcklpd xmm0, xmm0
mulpd xmm6, xmm0
mulsd xmm4, xmm0
mulpd xmm0, xmm0
addpd xmm7, xmm6
mulpd xmm7, xmm0
mulsd xmm0, xmm3
pshufd xmm6, xmm7, 0xee
mulsd xmm0, xmm7
pshufd xmm5, xmm3, 0xee
mulsd xmm6, xmm3
mulsd xmm4, xmm3
addsd xmm0, xmm5
addsd xmm0, xmm6
addsd xmm0, xmm4
addsd xmm0, xmm3
add esp, 0x10
ret
movlpd xmm4, qword [esp]
movlpd xmm2, qword [esp + 8]
movd eax, xmm4
cmp eax, 0
jne 0x4ae865
psrlq xmm4, 0x20
movd edx, xmm4
cmp edx, 0x3ff00000
je 0x4ae944
cmp edx, 0xbff00000
jne 0x4ae865
movlpd xmm0, qword [0x59fd00]
add esp, 0x10
ret
movlpd xmm3, qword [0x59fcf0]
xorpd xmm1, xmm1
andpd xmm3, xmm2
pcmpeqd xmm1, xmm3
pmovmskb eax, xmm1
and eax, 0xff
cmp eax, 0xff
jne 0x4ae8ec
pextrw eax, xmm2, 3
movlpd xmm4, qword [esp]
and eax, 0x8000
xor ecx, 0xbff00000
or edx, ecx
cmp edx, 0
je 0x4ae944
cmp eax, 0
je 0x4ae8c7
pextrw eax, xmm4, 3
and eax, 0x7ff0
cmp eax, 0x3ff0
jb 0x4ae8e0
xorpd xmm0, xmm0
add esp, 0x10
ret
pextrw eax, xmm4, 3
and eax, 0x7ff0
cmp eax, 0x3ff0
jae 0x4ae8e0
xorpd xmm0, xmm0
add esp, 0x10
ret
movlpd xmm0, qword [0x59fd60]
add esp, 0x10
ret
addsd xmm2, xmm2
movsd xmm0, xmm2
mov edx, 0x3ee
jmp 0x4ae950
movlpd xmm0, qword [0x5a2830]
add esp, 0x10
ret
sub esp, 0x18
movlpd qword [esp + 0x10], xmm0
mov dword [esp + 0xc], edx
mov edx, esp
add edx, 0x10
mov dword [esp + 8], edx
add edx, 0x10
mov dword [esp + 4], edx
sub edx, 8
mov dword [esp], edx
call fcn.004b9755
movlpd xmm0, qword [esp + 0x10]
add esp, 0x28
ret
cmp eax, 0
jle 0x4ae9af
cmp eax, 0x40000
jae 0x4aebb4
push esi
mov edx, eax
and eax, 0x7f
add ecx, 0x3ff00
sub edx, 0x80
and edx, 0xffffff80
push edi
mov edi, 0x3ff0
jmp 0x4ae9d5
cmp eax, 0xfffc0200
jle 0x4aeb91
push esi
mov edx, eax
and eax, 0x7f
add ecx, 0x80
and edx, 0xffffff80
add edx, 0x3fe80
push edi
mov edi, 0
addsd xmm4, xmm0
movsd xmm0, xmm3
addsd xmm3, qword [0x59fce0]
mov esi, edx
sub esi, 0x1ff80
mulpd xmm2, xmm7
subsd xmm3, qword [0x59fce0]
mulpd xmm7, xmm7
subsd xmm0, xmm3
add eax, eax
add eax, eax
add eax, eax
add eax, eax
movapd xmm3, xmmword [eax + 0x5a58b0]
movapd xmm6, xmmword [0x59fd20]
mulpd xmm1, xmm7
addpd xmm2, xmm1
pshufd xmm1, xmm2, 0xee
mulsd xmm2, xmm7
addsd xmm2, xmm1
addsd xmm2, xmm4
movlpd xmm4, qword [0x59fd40]
movd xmm1, edx
sub edx, 0x1ff80
neg edx
sar edx, 7
add edx, 2
mov eax, edx
and eax, 0x20
add edx, eax
xorpd xmm7, xmm7
mov eax, 0x3f80
pinsrw xmm7, eax, 3
mulsd xmm2, qword [esp + 0x10]
mulsd xmm0, xmm7
psllq xmm1, 0x2d
pshufd xmm1, xmm1, 0x44
movapd xmm7, xmmword [0x59fd30]
addsd xmm5, xmm2
mulpd xmm3, xmm1
addsd xmm0, xmm5
unpcklpd xmm0, xmm0
mulpd xmm6, xmm0
mulsd xmm4, xmm0
mulpd xmm0, xmm0
addpd xmm7, xmm6
mulpd xmm7, xmm0
mulsd xmm0, xmm3
pshufd xmm6, xmm7, 0xee
mulsd xmm0, xmm7
pshufd xmm5, xmm3, 0xee
mulsd xmm6, xmm3
mulsd xmm4, xmm3
movd xmm7, ecx
psllq xmm7, 0x2d
movd xmm2, edx
pcmpeqd xmm1, xmm1
psllq xmm1, xmm2
addsd xmm0, xmm5
addsd xmm0, xmm6
andpd xmm1, xmm3
addsd xmm0, xmm4
xorpd xmm6, xmm6
pcmpeqd xmm4, xmm4
psllq xmm4, xmm2
subsd xmm3, xmm1
movsd xmm2, xmm1
addsd xmm1, xmm0
andpd xmm1, xmm4
pinsrw xmm6, edi, 3
pop edi
subsd xmm2, xmm1
addsd xmm0, xmm2
addsd xmm0, xmm3
cmp esi, 0
jg 0x4aeb54
pop esi
mulsd xmm0, xmm7
mulsd xmm1, xmm7
addsd xmm0, xmm1
mulsd xmm6, xmm0
addsd xmm0, xmm6
pextrw eax, xmm0, 3
and eax, 0x7ff0
mov edx, 0x18
cmp eax, 0x7ff0
je 0x4ae950
mov edx, 0x19
cmp eax, 0
je 0x4ae950
add esp, 0x10
ret
pop esi
addsd xmm0, xmm1
mulsd xmm0, xmm7
mulsd xmm6, xmm0
addsd xmm0, xmm6
pextrw eax, xmm0, 3
and eax, 0x7ff0
mov edx, 0x18
cmp eax, 0x7ff0
je 0x4ae950
mov edx, 0x19
cmp eax, 0
je 0x4ae950
add esp, 0x10
ret
movlpd xmm0, qword [0x59fd88]
movd xmm1, ecx
mulsd xmm0, xmm0
psllq xmm1, 0x2d
orpd xmm0, xmm1
mov edx, 0x19
jmp 0x4ae950
mov edx, 0x18
cmp ecx, 0
je 0x4aebd3
movlpd xmm0, qword [0x59fd78]
mulsd xmm0, qword [0x59fd80]
jmp 0x4ae950
movlpd xmm0, qword [0x59fd80]
mulsd xmm0, xmm0
jmp 0x4ae950
pshufd xmm4, xmm1, 0x44
mulpd xmm4, xmm6
pextrw eax, xmm4, 3
and eax, 0x7ff0
mov edx, 0x40a0
sub edx, eax
sub eax, 0x3c70
or edx, eax
cmp edx, 0x80000000
jb 0x4ae335
cmp eax, 0x80000000
jb 0x4aec2b
or ecx, 0x1ff80
movd xmm0, ecx
psllq xmm0, 0x2d
add esp, 0x10
ret
movlpd xmm4, qword [esp]
pextrw edx, xmm4, 3
and edx, 0x7ff0
sub edx, 0x3ff0
pextrw eax, xmm1, 3
xor eax, edx
and eax, 0x8000
cmp eax, 0
jne 0x4aeb91
jmp 0x4aebb4