Function at 0x9038aff
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xab0
mov eax, 0x909ffe1
call fcn.0900621d
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0xa0c], eax
mov eax, 0x7d2
mov word [ebp - 0xa60], ax
push 9
pop eax
mov word [ebp - 0xa5e], ax
xor eax, eax
inc eax
mov word [ebp - 0xa5c], ax
xor eax, eax
push edx
mov dword [ebp - 0xa1c], edx
mov dword [ebp - 0xa14], esi
mov word [ebp - 0xa5a], ax
mov word [ebp - 0xa58], ax
mov word [ebp - 0xa56], ax
call fcn.0904e977
pop ecx
test al, al
jne 0x9038b86
push 0x90d0748
lea eax, [ebp - 0xa14]
push eax
mov dword [ebp - 0xa14], 0x7061726d
call sub.MSVCR100.dll__CxxThrowException
fld1
xor ebx, ebx
cmp esi, ebx
je 0x9038c79
mov edi, edx
call fcn.09035633
test al, al
jne 0x9038ba1
fstp st(0)
jmp 0x9038b6b
mov eax, esi
mov ecx, dword [eax]
fild dword [eax]
test ecx, ecx
jns 0x9038bb1
fadd qword [0x90b48f0]
mov ecx, dword [eax + 8]
fstp qword [ebp - 0xa2c]
fild dword [eax + 8]
test ecx, ecx
jns 0x9038bc7
fadd qword [0x90b48f0]
mov ecx, dword [eax + 0x10]
fstp qword [ebp - 0xa34]
fild dword [eax + 0x10]
test ecx, ecx
jns 0x9038bdd
fadd qword [0x90b48f0]
mov ecx, dword [eax + 4]
fstp qword [ebp - 0xa24]
fild dword [eax + 4]
test ecx, ecx
jns 0x9038bf3
fadd qword [0x90b48f0]
xor esi, esi
mov edx, edi
mov cl, byte [edx]
inc esi
shl esi, cl
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0xa04], esi
fild dword [ebp - 0xa04]
fsub st(2)
fdivp st(1)
fstp qword [ebp - 0xa44]
fild dword [eax + 0xc]
test ecx, ecx
jns 0x9038c22
fadd qword [0x90b48f0]
mov cl, byte [edx + 1]
xor esi, esi
inc esi
shl esi, cl
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0xa04], esi
fild dword [ebp - 0xa04]
fsub st(2)
fdivp st(1)
fstp qword [ebp - 0xa54]
fild dword [eax + 0x14]
test ecx, ecx
jns 0x9038c50
fadd qword [0x90b48f0]
mov cl, byte [edx + 2]
xor esi, esi
inc esi
shl esi, cl
mov eax, dword [eax + 0x18]
mov dword [ebp - 0xa04], esi
fild dword [ebp - 0xa04]
mov dword [ebp - 0xa04], eax
fsub st(2)
fdivp st(1)
fstp qword [ebp - 0xa4c]
jmp 0x9038cb5
lea eax, [ebp - 0xa04]
fstp st(0)
push eax
lea eax, [ebp - 0xa4c]
push eax
lea eax, [ebp - 0xa24]
push eax
lea eax, [ebp - 0xa54]
push eax
lea eax, [ebp - 0xa34]
push eax
lea eax, [ebp - 0xa44]
push eax
lea eax, [ebp - 0xa2c]
call fcn.0904e977
fld1
add esp, 0x18
fld qword [ebp - 0xa2c]
push 0x80
fdiv qword [0x90b4ae8]
lea eax, [ebp - 0x400]
push ebx
push eax
fst qword [ebp - 0xa74]
fld qword [ebp - 0xa34]
fdiv qword [0x90b4ae0]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0xa24]
fdiv qword [0x90b4ad8]
fstp qword [ebp - 0xa24]
fld qword [ebp - 0xa3c]
fadd st(1)
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0xa24]
fadd st(1)
fstp qword [ebp - 0xa34]
fmul qword [ebp - 0xa44]
fld qword [ebp - 0xa3c]
fmul qword [ebp - 0xa54]
fadd st(1)
fstp qword [ebp - 0xa7c]
fst qword [ebp - 0xa84]
fxch st(1)
fsub qword [ebp - 0xa4c]
fmul qword [ebp - 0xa24]
faddp st(1)
fstp qword [ebp - 0xa8c]
call sub.MSVCR100.dll_memset
fld qword [0x90aae10]
mov dword [ebp - 0x3fc], 0x41444245
mov dword [ebp - 0x3f8], 0x4000000
mov dword [ebp - 0x3f4], 0x73636e72
mov dword [ebp - 0x3f0], 0x33434c52
mov dword [ebp - 0x3ec], 0x58595a20
lea esi, [ebp - 0xa60]
lea edi, [ebp - 0x3e8]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
add esp, 4
mov dword [ebp - 0x3dc], 0x61637370
mov dword [ebp - 0x3d8], 0x4150504c
fstp qword [esp]
mov dword [ebp - 0x3c0], 1
call fcn.0904e977
mov dword [ebp - 0x3bc], eax
fld qword [0x90aae08]
fstp qword [esp]
call fcn.0904e977
fld qword [0x90aae00]
mov dword [ebp - 0x3b8], eax
fstp qword [esp]
call fcn.0904e977
mov edi, dword [ebp - 0xa0c]
pop ecx
pop ecx
mov dword [ebp - 0x3b4], eax
lea eax, [ebp - 0x400]
push eax
push edi
lea ecx, [ebp - 0x5c0]
mov dword [ebp - 0x3b0], 0x41444245
call fcn.0904e977
push 0x7d2
push edi
lea ecx, [ebp - 0x488]
call fcn.09036b7e
lea eax, [ebp - 0x488]
push eax
lea ecx, [ebp - 0x5c0]
mov dword [ebp - 4], ebx
call fcn.0904e977
mov ecx, dword [ebp - 0xa04]
lea edx, [ebp - 0x24]
call fcn.0904e977
mov eax, dword [ebp - 0xa14]
cmp eax, ebx
je 0x9038e8f
lea ecx, [ebp - 0x24]
push ecx
push dword [eax + 0x14]
push dword [eax + 0x10]
push dword [eax + 0xc]
push dword [eax + 8]
push dword [eax + 4]
push dword [eax]
mov eax, dword [ebp - 0xa1c]
movzx ecx, byte [eax + 2]
push ecx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax]
push ecx
push eax
lea eax, [ebp - 0x154]
push str.JPX_CIELAB_bits_ch:__u__u__u__RL:_u_OL:_u_Ra:_u_Oa:_u_Rb:_u_Ob:_u_IL:_s
push eax
call fcn.0904e977
add esp, 0x30
jmp 0x9038eb7
mov eax, dword [ebp - 0xa1c]
movzx ecx, byte [eax + 2]
push ecx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax]
push ecx
push eax
lea eax, [ebp - 0x154]
push str.JPX_CIELAB_bits_ch:__u__u__u__default_parameters
push eax
call fcn.0904e977
add esp, 0x14
lea eax, [ebp - 0x154]
push eax
push edi
lea ecx, [ebp - 0x460]
call fcn.09030939
lea eax, [ebp - 0x460]
push eax
lea ecx, [ebp - 0x5c0]
mov byte [ebp - 4], 1
call fcn.0904e977
fld qword [0x90aaf18]
sub esp, 0x18
fstp qword [esp + 0x10]
lea ecx, [ebp - 0x4b8]
fld1
fstp qword [esp + 8]
fld qword [0x90aaf08]
fstp qword [esp]
push 0x77747074
call fcn.0904e977
mov eax, ecx
push eax
lea ecx, [ebp - 0x5c0]
mov byte [ebp - 4], 2
call fcn.0904e977
mov edx, dword [ebp - 0xa04]
lea eax, [ebp - 0xa08]
push eax
lea eax, [ebp - 0xa18]
push eax
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0xa54]
call fcn.0904e977
add esp, 0xc
lea eax, [ebp - 0x1cc]
push eax
lea ecx, [ebp - 0x380]
call fcn.0904e977
mov eax, ecx
push eax
lea ecx, [ebp - 0x5c0]
mov byte [ebp - 4], 3
call fcn.0904e977
push ebx
push 0x41324232
push 0x41324230
mov esi, 0x6d414220
push esi
push edi
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push ebx
push ebx
push 0x41324231
push esi
push edi
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push 3
pop edx
push edx
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 5
call fcn.0904e977
push edx
call fcn.0904e977
push edx
lea ecx, [ebp - 0x34c]
call fcn.09031e42
push edx
call fcn.0904e977
mov esi, 0x90b50c8
lea edi, [ebp - 0x1c]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
xor eax, eax
lea edi, [ebp - 0x17]
stosd dword es:[edi], eax
stosw word es:[edi], ax
push 8
stosb byte es:[edi], al
lea eax, [ebp - 0x18]
push ebx
push eax
call sub.MSVCR100.dll_memset
add esp, 0xc
push 0xc
pop esi
push esi
lea eax, [ebp - 0x1c]
push eax
push ebx
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push 1
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push 2
pop edi
push edi
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push ebx
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push 1
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push edi
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push ebx
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push 1
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push edi
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push ebx
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push 1
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push esi
lea eax, [ebp - 0x1c]
push eax
push edi
lea ecx, [ebp - 0x34c]
call fcn.0904e977
fld qword [ebp - 0xa34]
sub esp, 0x28
fstp qword [esp + 0x20]
lea ecx, [ebp - 0x54]
fld qword [ebp - 0xa2c]
fstp qword [esp + 0x18]
fld qword [ebp - 0xa24]
fstp qword [esp + 0x10]
fld qword [ebp - 0xa3c]
fstp qword [esp + 8]
fld qword [ebp - 0xa74]
fstp qword [esp]
call fcn.0904e977
add esp, 0x28
lea eax, [ebp - 0x54]
push eax
push edi
lea eax, [ebp - 0xa10]
push eax
lea ecx, [ebp - 0x2f8]
mov word [ebp - 0xa10], 0x202
mov byte [ebp - 0xa0e], 2
call fcn.0904e977
lea eax, [ebp - 0x54]
push eax
push edi
lea eax, [ebp - 0xa10]
push eax
lea ecx, [ebp - 0x34c]
call fcn.0904e977
fld qword [ebp - 0xa2c]
fld qword [0x90b4e88]
xor esi, esi
fadd st(1), st(0)
fxch st(1)
fsub qword [ebp - 0xa7c]
fld st(0)
fmul st(1)
fmulp st(1)
fstp qword [ebp - 0xa4c]
fld qword [ebp - 0xa74]
fadd st(1)
fsub qword [ebp - 0xa84]
fld st(0)
fmul st(1)
fmulp st(1)
fstp qword [ebp - 0xa44]
fadd qword [ebp - 0xa34]
fsub qword [ebp - 0xa8c]
fld st(0)
fmul st(1)
fmulp st(1)
fstp qword [ebp - 0xa3c]
fld qword [ebp + esi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa4c]
push ecx
fmul qword [ebp - 0xa54]
fmul qword [0x90b49f0]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + esi*4 - 0x1fc], eax
add esi, 3
pop ecx
pop ecx
cmp esi, 7
jb 0x9039192
xor esi, esi
inc esi
fld qword [ebp + esi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa44]
push ecx
fmul qword [ebp - 0xa18]
fmul qword [0x90b49f0]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + esi*4 - 0x1fc], eax
add esi, 3
pop ecx
pop ecx
cmp esi, 8
jb 0x90391c9
fld qword [ebp + edi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa3c]
push ecx
fmul qword [ebp - 0xa08]
fmul qword [0x90b49f0]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + edi*4 - 0x1fc], eax
add edi, 3
pop ecx
pop ecx
cmp edi, 9
jb 0x90391fd
xor eax, eax
lea edi, [ebp - 0x1d8]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor esi, esi
fld qword [ebp + esi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa4c]
push ecx
fmul qword [ebp - 0xa54]
fmul qword [0x90b49f0]
fmul qword [0x90b50c0]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + esi*4 - 0x184], eax
inc esi
pop ecx
pop ecx
cmp esi, 3
jb 0x903923e
push 3
pop esi
fld qword [ebp + esi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa44]
push ecx
fmul qword [ebp - 0xa18]
fmul qword [0x90b49f0]
fmul qword [0x90b50b8]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + esi*4 - 0x184], eax
inc esi
pop ecx
pop ecx
cmp esi, 7
jb 0x9039279
push 7
pop esi
fld qword [ebp + esi*8 - 0x1cc]
push ecx
fmul qword [ebp - 0xa3c]
push ecx
fmul qword [ebp - 0xa08]
fmul qword [0x90b49f0]
fmul qword [0x90b50b0]
fstp qword [esp]
call fcn.0904e977
mov dword [ebp + esi*4 - 0x184], eax
inc esi
pop ecx
pop ecx
cmp esi, 9
jb 0x90392b4
fld qword [0x90b50a8]
push ecx
push ecx
fstp qword [esp]
call fcn.0904e977
fld qword [0x90b50a0]
mov dword [ebp - 0x160], eax
fstp qword [esp]
call fcn.0904e977
fld qword [0x90b5098]
mov dword [ebp - 0x15c], eax
fstp qword [esp]
call fcn.0904e977
pop ecx
pop ecx
mov dword [ebp - 0x158], eax
lea eax, [ebp - 0x184]
push eax
lea ecx, [ebp - 0x2f8]
call fcn.0904e977
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x34c]
call fcn.0904e977
push ebx
push ebx
mov esi, 0x6b545243
push esi
lea ecx, [ebp - 0x368]
call fcn.0904e977
push ebx
push ebx
push esi
lea ecx, [ebp - 0x41c]
call fcn.0904e977
push ebx
push ebx
push esi
lea ecx, [ebp - 0x438]
call fcn.0904e977
fld qword [ebp - 0xa8c]
sub esp, 0x30
fstp qword [esp + 0x28]
lea eax, [ebp - 0x234]
fld qword [ebp - 0xa34]
lea ecx, [ebp - 0x2a4]
fstp qword [esp + 0x20]
mov byte [ebp - 4], 8
fld qword [ebp - 0xa84]
fstp qword [esp + 0x18]
fld qword [ebp - 0xa74]
fstp qword [esp + 0x10]
fld qword [ebp - 0xa7c]
fstp qword [esp + 8]
fld qword [ebp - 0xa2c]
fstp qword [esp]
push eax
lea eax, [ebp - 0x26c]
call fcn.0904e977
add esp, 0x34
lea eax, [ebp - 0x234]
push eax
push 4
lea ecx, [ebp - 0x368]
call fcn.0904e977
lea eax, [ebp - 0x2a4]
push eax
push 4
lea ecx, [ebp - 0x41c]
call fcn.0904e977
lea eax, [ebp - 0x26c]
push eax
push 4
lea ecx, [ebp - 0x438]
call fcn.0904e977
lea ecx, [ebp - 0x368]
call fcn.09030cdb
mov esi, eax
push esi
push dword [ebp - 0xa0c]
lea ecx, [ebp - 0x6d0]
call fcn.0904e977
push esi
push dword [ebp - 0xa0c]
lea ecx, [ebp - 0x7e0]
mov byte [ebp - 4], 9
call fcn.0904e977
push esi
push dword [ebp - 0xa0c]
lea ecx, [ebp - 0xa00]
mov byte [ebp - 4], 0xa
call fcn.0904e977
mov ecx, dword [ebp - 0x6d0]
mov eax, vtable.ACEPtrStream.0
mov dword [ebp - 0xab8], ebx
mov byte [ebp - 0xab4], 1
mov dword [ebp - 0xabc], eax
mov byte [ebp - 0xab0], 1
mov dword [ebp - 0xaac], ecx
mov dword [ebp - 0xaa8], esi
mov ecx, dword [ebp - 0x7e0]
mov dword [ebp - 0xaa0], ebx
mov byte [ebp - 0xa9c], 1
mov dword [ebp - 0xaa4], eax
mov byte [ebp - 0xa98], 1
mov dword [ebp - 0xa94], ecx
mov dword [ebp - 0xa90], esi
mov dword [ebp - 0xa6c], eax
mov eax, dword [ebp - 0xa00]
mov dword [ebp - 0xa68], ebx
mov byte [ebp - 0xa64], 1
mov byte [ebp - 0xa60], 1
mov dword [ebp - 0xa5c], eax
mov dword [ebp - 0xa58], esi
lea eax, [ebp - 0xabc]
push eax
lea ecx, [ebp - 0x368]
mov byte [ebp - 4], 0xe
call fcn.0904e977
lea eax, [ebp - 0xaa4]
push eax
lea ecx, [ebp - 0x41c]
call fcn.0904e977
lea eax, [ebp - 0xa6c]
push eax
lea ecx, [ebp - 0x438]
call fcn.0904e977
push esi
push dword [ebp - 0x6d0]
mov eax, vtable.ACEStream.0
push ebx
lea ecx, [ebp - 0x2f8]
mov dword [ebp - 0xa6c], eax
mov dword [ebp - 0xaa4], eax
mov byte [ebp - 4], 0xb
mov dword [ebp - 0xabc], eax
call fcn.0904e977
push esi
push dword [ebp - 0x7e0]
lea ecx, [ebp - 0x2f8]
push 1
call fcn.0904e977
push esi
push dword [ebp - 0xa00]
lea ecx, [ebp - 0x2f8]
push 2
call fcn.0904e977
push esi
push dword [ebp - 0x6d0]
lea ecx, [ebp - 0x34c]
push ebx
call fcn.0904e977
push esi
push dword [ebp - 0x7e0]
lea ecx, [ebp - 0x34c]
push 1
call fcn.0904e977
push esi
push dword [ebp - 0xa00]
lea ecx, [ebp - 0x34c]
push 2
call fcn.0904e977
lea eax, [ebp - 0x2f8]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.0904e977
lea eax, [ebp - 0x34c]
push eax
lea ecx, [ebp - 0x5c0]
call fcn.0904e977
lea ecx, [ebp - 0xa00]
mov byte [ebp - 4], 0xa
call fcn.09007ffd
lea ecx, [ebp - 0x7e0]
mov byte [ebp - 4], 9
call fcn.09007ffd
lea ecx, [ebp - 0x6d0]
mov byte [ebp - 4], 8
call fcn.09007ffd
lea ecx, [ebp - 0x5c0]
call fcn.09007385
mov esi, eax
mov edi, dword [esi + 0x28]
push edi
push dword [ebp - 0xa0c]
lea ecx, [ebp - 0x8f0]
call fcn.0904e977
push dword [ebp - 0x8f0]
mov eax, dword [esi]
push edi
push ebx
mov ecx, esi
mov byte [ebp - 4], 0xf
call dword [eax + 0x18]
mov ecx, esi
call fcn.0900574e
push edi
push dword [ebp - 0x8f0]
call fcn.0904e977
push edi
push dword [ebp - 0x8f0]
push dword [ebp - 0xa0c]
call fcn.0904e977
add esp, 0x14
lea ecx, [ebp - 0x8f0]
mov esi, eax
mov byte [ebp - 4], 8
call fcn.09007ffd
lea ecx, [ebp - 0x34c]
mov byte [ebp - 4], 4
call fcn.09031dc7
lea ecx, [ebp - 0x2f8]
mov byte [ebp - 4], 3
call fcn.09031dc7
mov eax, vtable.CProfileTag.0
lea ecx, [ebp - 0x460]
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x4b8], eax
mov byte [ebp - 4], bl
call fcn.09030aeb
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x488]
call fcn.090308ca
mov eax, esi
call fcn.0900804d
ret