Function at 0x100b85e0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x400dc
call fcn.1012bcf0
mov eax, dword [0x1019c020]
xor eax, esp
mov dword [esp + 0x400d8], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov dword [esp + 0x28], ebx
cmp dword [ebx + 0xbc], 0
je 0x100b8629
push str.AHD_interpolation..._n
push 2
call fcn.10139778
add esp, 4
push eax
call fcn.10001240
add esp, 8
xor esi, esi
nop dword [eax + eax]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
divss xmm0, dword [0x10192278]
comiss xmm0, dword [0x10191e08]
jbe 0x100b865e
movsd xmm1, qword [0x10191f78]
cvtps2pd xmm0, xmm0
call fcn.10138570
cvtsd2ss xmm0, xmm0
jmp 0x100b866e
mulss xmm0, dword [0x101921e0]
addss xmm0, dword [0x10191e1c]
movss dword [esp + esi*4 + 0xe0], xmm0
inc esi
cmp esi, 0x10000
jl 0x100b8630
mov edx, dword [ebx + 0x66d0]
lea eax, [esp + 0xb0]
mov dword [esp + 0x38], eax
mov esi, 0x10164228
mov edi, 0x10164348
xorps xmm7, xmm7
nop
test edx, edx
jle 0x100b8729
movss xmm6, dword [edi]
mov ecx, eax
movsd xmm3, qword [esi - 8]
lea eax, [ebx + 0xe7d4]
movsd xmm4, qword [esi]
movsd xmm5, qword [esi + 8]
movss xmm0, dword [eax - 0x10]
xorps xmm2, xmm2
cvtps2pd xmm0, xmm0
cvtss2sd xmm2, xmm6
mulsd xmm0, xmm3
divsd xmm0, xmm2
cvtpd2ps xmm1, xmm0
movss xmm0, dword [eax]
cvtps2pd xmm0, xmm0
addss xmm1, xmm7
mulsd xmm0, xmm4
divsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm1, xmm0
movss xmm0, dword [eax + 0x10]
cvtps2pd xmm0, xmm0
add eax, 4
mulsd xmm0, xmm5
divsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
addss xmm1, xmm0
movss dword [ecx], xmm1
add ecx, 4
sub edx, 1
jne 0x100b86c2
mov eax, dword [esp + 0x38]
mov edx, dword [ebx + 0x66d0]
add edi, 4
add eax, 0x10
add esi, 0x18
mov dword [esp + 0x38], eax
cmp edi, 0x10164354
jl 0x100b86a0
mov edx, 5
mov ecx, ebx
call fcn.100b6fc0
push 0x1a0000
call fcn.1012f850
mov ecx, eax
add esp, 4
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x100b939e
lea eax, [ecx + 0x180000]
mov esi, 2
mov dword [esp + 0x38], eax
movzx eax, word [ebx + 0x66b4]
sub eax, 5
mov dword [esp + 0x3c], esi
cmp eax, esi
jle 0x100b9380
movss xmm0, dword [0x10191e4c]
movss xmm5, dword [0x10192224]
movss xmm6, dword [0x101921f8]
movss xmm7, dword [0x1019221c]
nop
movzx eax, word [ebx + 0x66b6]
mov edx, 2
sub eax, 5
mov dword [esp + 0x14], edx
cmp eax, edx
jle 0x100b9360
mov ecx, esi
lea eax, [esi + 0x100]
neg ecx
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
lea eax, [esi + 1]
lea ecx, [esi + 2]
mov dword [esp + 0x48], eax
mov dword [esp + 0x5c], ecx
lea eax, [esi + 0xff]
lea ecx, [esi + 0xfe]
mov dword [esp + 0x44], eax
mov dword [esp + 0x4c], ecx
lea ecx, [esi + 3]
mov dword [esp + 0x60], ecx
lea ecx, [esi + 0xfd]
mov dword [esp + 0x50], ecx
lea ecx, [esi + 0x100]
mov edi, esi
mov dword [esp + 0x2c], edi
cmp esi, ecx
jge 0x100b8a19
mov ecx, edx
mov eax, edx
and ecx, 1
neg eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x1c], eax
nop word [eax + eax]
movzx eax, word [ebx + 0x66b4]
sub eax, 2
cmp edi, eax
jge 0x100b8a15
mov esi, dword [ebx + 0x65b0]
mov eax, edi
and eax, 7
mov edx, esi
add eax, eax
add ecx, eax
add ecx, ecx
shr edx, cl
and edx, 1
add edx, dword [esp + 0x14]
mov ecx, edx
mov dword [esp + 0x24], edx
and ecx, 1
add ecx, eax
mov eax, dword [esp + 0x14]
add ecx, ecx
add eax, 0x100
shr esi, cl
and esi, 3
mov dword [esp + 0xc], esi
cmp edx, eax
jge 0x100b89fa
nop word [eax + eax]
movzx ecx, word [ebx + 0x66b6]
lea eax, [ecx - 2]
cmp edx, eax
jge 0x100b89fa
mov eax, dword [ebx + 0x66e0]
imul ecx, edi
add ecx, edx
movzx edx, word [eax + ecx*8 + 0xa]
movzx ebx, dx
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0xc]
lea eax, [eax + ecx*8]
movzx esi, word [eax + esi*2]
movzx ecx, word [eax - 6]
mov edi, ecx
mov dword [esp + 0x18], eax
movzx eax, word [eax + edx*2 - 0x10]
add esi, edi
add esi, ebx
add esi, esi
sub esi, eax
mov eax, dword [esp + 0x18]
movzx eax, word [eax + edx*2 + 0x10]
mov edx, dword [esp + 0x30]
sub esi, eax
sar esi, 2
cmp cx, dx
jae 0x100b8913
cmp esi, ebx
mov eax, ebx
cmovl eax, esi
cmp edi, eax
jg 0x100b8927
mov edi, ebx
cmp esi, ebx
jmp 0x100b8924
cmp esi, edi
mov eax, edi
cmovl eax, esi
cmp ebx, eax
jle 0x100b8922
mov edi, ebx
jmp 0x100b8927
cmp esi, edi
cmovl edi, esi
mov eax, dword [esp + 0x24]
add eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
lea eax, [eax + eax*2]
mov word [ecx + eax*2 + 2], di
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov eax, edi
movzx edx, word [ecx + 0x66b6]
shl edx, 3
sub eax, edx
movzx ecx, word [edx + edi + 2]
movzx esi, word [eax + 2]
mov eax, dword [esp + 0xc]
add eax, edx
movzx ebx, si
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x10], ecx
movzx eax, word [edi + eax*2]
movzx edi, word [edi + esi*2]
add edi, ecx
add edi, ebx
add edi, edi
sub edi, eax
mov eax, esi
mov esi, dword [esp + 0x30]
sub eax, edx
mov edx, dword [esp + 0x18]
movzx eax, word [edx + eax*2]
sub edi, eax
sar edi, 2
cmp si, cx
jae 0x100b89ae
cmp edi, ecx
mov eax, ecx
cmovl eax, edi
cmp ebx, eax
jg 0x100b89c2
mov ebx, ecx
cmp edi, ecx
jmp 0x100b89bf
cmp edi, ebx
mov eax, ebx
cmovl eax, edi
cmp ecx, eax
jle 0x100b89bd
mov ebx, ecx
jmp 0x100b89c2
cmp edi, ebx
cmovl ebx, edi
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0xc]
add edx, 2
mov edi, dword [esp + 0x2c]
mov word [ecx + eax*2 + 0x60002], bx
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x28]
add eax, 0x100
mov dword [esp + 0x24], edx
cmp edx, eax
jl 0x100b88a0
add dword [esp + 0x1c], 0x100
inc edi
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x2c], edi
cmp edi, dword [esp + 0x54]
jl 0x100b8840
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x58]
mov edi, 2
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x1c], edx
mov dword [esp + 0xc], edi
nop
mov esi, ecx
mov dword [esp + 0x24], esi
cmp esi, eax
jge 0x100b8d8d
lea ecx, [esi*4 + 4]
mov dword [esp + 0x18], ecx
nop dword [eax]
movzx eax, word [ebx + 0x66b4]
sub eax, 3
cmp esi, eax
jge 0x100b8d7d
mov eax, dword [esp + 0x14]
lea edx, [eax + 1]
add eax, 0xff
mov dword [esp + 0x2c], edx
cmp edx, eax
jge 0x100b8d63
mov edi, esi
mov eax, ecx
and edi, 7
add edi, edi
and eax, 0x1c
mov dword [esp + 0x10], edi
mov dword [esp + 0x34], eax
nop
movzx ecx, word [ebx + 0x66b6]
lea eax, [ecx - 3]
cmp edx, eax
jge 0x100b8d5f
mov eax, dword [ebx + 0x66e0]
imul ecx, esi
add ecx, edx
lea ebx, [eax + ecx*8]
mov eax, dword [esp + 0x1c]
add eax, esi
mov esi, dword [esp + 0x20]
shl eax, 8
sub eax, dword [esp + 0x14]
add eax, edx
and edx, 1
lea eax, [eax + eax*2]
add eax, eax
lea ecx, [edi + edx]
add esi, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x28]
add ecx, ecx
mov edi, 2
mov dword [esp + 0x40], ecx
mov eax, dword [eax + 0x65b0]
shr eax, cl
and eax, 3
sub edi, eax
cmp edi, 1
jne 0x100b8b8b
mov eax, dword [esp + 0x34]
lea ecx, [eax + edx*2]
mov eax, dword [esp + 0x28]
mov edi, dword [eax + 0x65b0]
shr edi, cl
mov ecx, ebx
and edi, 3
mov edx, edi
neg edx
lea eax, [edi*2 + 4]
sub ecx, eax
movzx eax, word [ebx + edx*2 + 0xc]
movzx ecx, word [ecx]
add ecx, eax
movzx eax, word [esi + 8]
sub ecx, eax
movzx eax, word [esi - 4]
sub ecx, eax
movzx eax, word [ebx + 2]
sar ecx, 1
add ecx, eax
mov eax, 0xffff
cmp ecx, eax
cmovl eax, ecx
xor ecx, ecx
test eax, eax
cmovs eax, ecx
mov word [esi + edx*2 + 4], ax
mov eax, dword [esp + 0x28]
movzx ecx, word [eax + 0x66b6]
shl ecx, 2
lea eax, [ecx + edi]
movzx edx, word [ebx + eax*2]
mov eax, edi
sub eax, ecx
movzx eax, word [ebx + eax*2]
add edx, eax
movzx eax, word [esi + 0x602]
sub edx, eax
movzx eax, word [esi - 0x5fe]
sub edx, eax
movzx eax, word [ebx + 2]
sar edx, 1
jmp 0x100b8be5
mov ecx, dword [esp + 0x28]
movzx eax, word [ecx + 0x66b6]
mov ecx, edi
shl eax, 2
sub ecx, eax
add eax, edi
movzx edx, word [ebx + eax*2 - 8]
movzx eax, word [ebx + eax*2 + 8]
add edx, eax
movzx eax, word [ebx + ecx*2 - 8]
add edx, eax
movzx eax, word [ebx + ecx*2 + 8]
add edx, eax
movzx eax, word [esi + 0x608]
sub edx, eax
movzx eax, word [esi - 0x604]
sub edx, eax
movzx eax, word [esi + 0x5fc]
sub edx, eax
movzx eax, word [esi - 0x5f8]
sub edx, eax
movzx eax, word [esi + 2]
inc edx
sar edx, 2
add edx, eax
movaps xmm4, xmm0
mov eax, 0xffff
movaps xmm3, xmm0
cmp edx, eax
movaps xmm2, xmm0
cmovl eax, edx
xor ecx, ecx
test eax, eax
cmovs eax, ecx
mov ecx, dword [esp + 0x40]
mov word [esi + edi*2], ax
mov eax, dword [esp + 0x28]
mov edx, dword [eax + 0x65b0]
shr edx, cl
xor ecx, ecx
and edx, 3
mov ax, word [ebx + edx*2]
mov ebx, dword [esp + 0x28]
mov word [esi + edx*2], ax
mov edx, dword [ebx + 0x66d0]
test edx, edx
jle 0x100b8c73
movzx eax, word [esi + ecx*2]
movss xmm0, dword [esp + ecx*4 + 0xb0]
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm1
addss xmm2, xmm0
movss xmm0, dword [esp + ecx*4 + 0xc0]
mulss xmm0, xmm1
addss xmm3, xmm0
movss xmm0, dword [esp + ecx*4 + 0xd0]
mulss xmm0, xmm1
inc ecx
addss xmm4, xmm0
cmp ecx, edx
jl 0x100b8c30
cvttss2si eax, xmm2
cmp eax, 0xffff
jge 0x100b8c86
test eax, eax
jns 0x100b8c86
xor ecx, ecx
jmp 0x100b8c90
mov ecx, 0xffff
cmp eax, ecx
cmovl ecx, eax
movss xmm2, dword [esp + ecx*4 + 0xe0]
cvttss2si ecx, xmm3
cmp ecx, 0xffff
jge 0x100b8cad
test ecx, ecx
jns 0x100b8cad
xor eax, eax
jmp 0x100b8cb7
mov eax, 0xffff
cmp ecx, eax
cmovl eax, ecx
movss xmm1, dword [esp + eax*4 + 0xe0]
cvttss2si eax, xmm4
cmp eax, 0xffff
jge 0x100b8cd3
test eax, eax
jns 0x100b8cd3
xor ecx, ecx
jmp 0x100b8cdd
mov ecx, 0xffff
cmp eax, ecx
cmovl ecx, eax
mov edx, dword [esp + 0x30]
subss xmm2, xmm1
mov esi, dword [esp + 0x20]
movaps xmm0, xmm1
subss xmm1, dword [esp + ecx*4 + 0xe0]
mulss xmm0, xmm5
mov edi, dword [esp + 0x10]
mulss xmm2, dword [0x10192274]
mulss xmm1, dword [0x1019226c]
subss xmm0, xmm6
mulss xmm0, xmm7
cvttss2si eax, xmm0
movss xmm0, dword [0x10191e4c]
mov word [edx + esi + 0xc0000], ax
cvttss2si eax, xmm2
mov word [edx + esi + 0xc0002], ax
cvttss2si eax, xmm1
mov word [edx + esi + 0xc0004], ax
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x14]
inc edx
mov esi, dword [esp + 0x24]
add eax, 0xff
mov dword [esp + 0x2c], edx
cmp edx, eax
jl 0x100b8a90
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x44]
inc esi
add ecx, 4
mov dword [esp + 0x24], esi
mov dword [esp + 0x18], ecx
cmp esi, eax
jl 0x100b8a50
jmp 0x100b8d81
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x48]
add edx, 0x100
sub edi, 1
mov dword [esp + 0x1c], edx
mov dword [esp + 0xc], edi
jne 0x100b8a30
push 0x20000
push 0
push dword [esp + 0x40]
call fcn.1012df50
mov edi, dword [esp + 0x68]
add esp, 0xc
mov dword [esp + 0x24], edi
cmp edi, dword [esp + 0x4c]
jge 0x100b90a5
mov esi, edi
sub esi, dword [esp + 0x3c]
mov dword [esp + 0x18], esi
movzx eax, word [ebx + 0x66b4]
sub eax, 4
cmp edi, eax
jge 0x100b90a5
mov eax, dword [esp + 0x14]
lea ecx, [eax + 2]
add eax, 0xfe
mov dword [esp + 0x2c], ecx
cmp ecx, eax
jge 0x100b9091
mov edx, ecx
sub edx, dword [esp + 0x14]
mov dword [esp + 0x1c], edx
nop word [eax + eax]
movzx eax, word [ebx + 0x66b6]
sub eax, 4
cmp ecx, eax
jge 0x100b908d
mov ecx, dword [esp + 0x20]
mov eax, esi
shl eax, 8
add eax, edx
mov dword [esp + 0x34], eax
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*2]
add ecx, 0xbfffa
xor ebx, ebx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
nop word [eax + eax]
movzx eax, word [ecx + 6]
movsx esi, ax
movsx eax, word [ecx]
mov edx, esi
sub edx, eax
mov ecx, edx
sar ecx, 0x1f
mov eax, ecx
xor eax, edx
sub eax, ecx
mov ecx, dword [esp + 0xc]
mov dword [esp + ebx + 0x90], eax
movsx ebx, word [ecx + 0xa]
movsx eax, word [ecx + 4]
mov edx, ebx
movsx edi, word [ecx + 8]
sub edx, eax
movsx eax, word [ecx + 2]
mov ecx, edi
sub ecx, eax
imul edx, edx
mov eax, dword [esp + 0xc]
imul ecx, ecx
movsx eax, word [eax + 0xc]
add ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + edx + 0x70], ecx
mov ecx, esi
sub ecx, eax
mov eax, ecx
sar eax, 0x1f
xor ecx, eax
sub ecx, eax
mov dword [esp + edx + 0x94], ecx
mov edx, ebx
mov ecx, dword [esp + 0xc]
movsx eax, word [ecx + 0x10]
sub edx, eax
movsx eax, word [ecx + 0xe]
mov ecx, edi
imul edx, edx
sub ecx, eax
mov eax, dword [esp + 0x10]
imul ecx, ecx
add edx, ecx
mov ecx, esi
mov dword [esp + eax + 0x74], edx
mov edx, ebx
mov eax, dword [esp + 0xc]
movsx eax, word [eax - 0x5fa]
sub ecx, eax
mov eax, ecx
sar eax, 0x1f
xor ecx, eax
sub ecx, eax
mov eax, dword [esp + 0x10]
mov dword [esp + eax + 0x98], ecx
mov ecx, dword [esp + 0xc]
movsx eax, word [ecx - 0x5f6]
sub edx, eax
movsx eax, word [ecx - 0x5f8]
mov ecx, edi
imul edx, edx
sub ecx, eax
imul ecx, ecx
add ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + edx + 0x78], ecx
mov ecx, dword [esp + 0xc]
movsx eax, word [ecx + 0x606]
sub esi, eax
mov eax, esi
sar eax, 0x1f
xor esi, eax
sub esi, eax
movsx eax, word [ecx + 0x60a]
sub ebx, eax
mov dword [esp + edx + 0x9c], esi
movsx eax, word [ecx + 0x608]
sub edi, eax
imul edi, edi
imul ebx, ebx
add ecx, 0x60000
mov dword [esp + 0xc], ecx
add edi, ebx
mov dword [esp + edx + 0x7c], edi
add edx, 0x10
mov dword [esp + 0x10], edx
mov ebx, edx
cmp edx, 0x20
jl 0x100b8e50
mov esi, dword [esp + 0x94]
mov ecx, esi
mov edx, dword [esp + 0x90]
cmp edx, esi
mov edi, dword [esp + 0xac]
mov eax, edi
mov ebx, dword [esp + 0xa8]
cmova ecx, edx
cmp ebx, edi
cmova eax, ebx
cmp ecx, eax
jae 0x100b8fb5
cmp edx, esi
cmova esi, edx
jmp 0x100b8fbc
cmp ebx, edi
mov esi, edi
cmova esi, ebx
mov edx, dword [esp + 0x74]
mov ecx, edx
mov edi, dword [esp + 0x70]
cmp edi, edx
mov ebx, dword [esp + 0x8c]
mov eax, ebx
cmova ecx, edi
cmp dword [esp + 0x88], ebx
cmova eax, dword [esp + 0x88]
cmp ecx, eax
jae 0x100b8fee
cmp edi, edx
cmova edx, edi
jmp 0x100b8fff
cmp dword [esp + 0x88], ebx
mov edx, ebx
cmova edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x34]
xor eax, eax
nop dword [eax]
cmp dword [esp + eax + 0x90], esi
ja 0x100b9021
cmp dword [esp + eax + 0x70], edx
ja 0x100b9021
inc byte [ecx]
cmp dword [esp + eax + 0x94], esi
ja 0x100b9032
cmp dword [esp + eax + 0x74], edx
ja 0x100b9032
inc byte [ecx]
cmp dword [esp + eax + 0x98], esi
ja 0x100b9043
cmp dword [esp + eax + 0x78], edx
ja 0x100b9043
inc byte [ecx]
cmp dword [esp + eax + 0x9c], esi
ja 0x100b9054
cmp dword [esp + eax + 0x7c], edx
ja 0x100b9054
inc byte [ecx]
add eax, 0x10
add ecx, 0x10000
cmp eax, 0x20
jl 0x100b9010
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
inc ecx
mov eax, dword [esp + 0x14]
inc edx
mov ebx, dword [esp + 0x28]
add eax, 0xfe
mov esi, dword [esp + 0x18]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x1c], edx
cmp ecx, eax
jl 0x100b8e10
mov edi, dword [esp + 0x24]
inc edi
inc esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x18], esi
cmp edi, dword [esp + 0x4c]
jl 0x100b8dd3
mov edx, dword [esp + 0x60]
mov dword [esp + 0xc], edx
cmp edx, dword [esp + 0x50]
jge 0x100b9318
mov esi, edx
sub esi, dword [esp + 0x3c]
mov dword [esp + 0x18], esi
movzx eax, word [ebx + 0x66b4]
sub eax, 5
cmp edx, eax
jge 0x100b9318
mov eax, dword [esp + 0x14]
lea ecx, [eax + 3]
add eax, 0xfd
mov dword [esp + 0x10], ecx
cmp ecx, eax
jge 0x100b9304
mov edi, ecx
sub edi, dword [esp + 0x14]
mov dword [esp + 0x1c], edi
nop word [eax + eax]
movzx eax, word [ebx + 0x66b6]
mov dword [esp + 0x30], eax
add eax, 0xfffffffb
cmp ecx, eax
jge 0x100b9300
lea ecx, [esi - 1]
xor ebx, ebx
lea eax, [esi + 1]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x2c], eax
lea esi, [esp + 0x68]
mov dword [esp + 0x24], ebx
nop
mov edx, ecx
mov dword [esi], 0
cmp edx, eax
jg 0x100b918f
lea ecx, [edi - 1]
mov dword [esp + 0x40], ecx
lea eax, [edi + 1]
cmp ecx, eax
jg 0x100b9178
mov edi, dword [esi]
lea eax, [ebx + edx]
mov ebx, dword [esp + 0x1c]
shl eax, 8
add eax, dword [esp + 0x38]
mov dword [esp + 0x34], eax
jmp 0x100b9164
mov eax, dword [esp + 0x34]
movsx eax, byte [eax + ecx]
inc ecx
add edi, eax
lea eax, [ebx + 1]
cmp ecx, eax
jle 0x100b9160
mov ebx, dword [esp + 0x24]
mov dword [esi], edi
mov ecx, dword [esp + 0x40]
inc edx
cmp edx, dword [esp + 0x2c]
jle 0x100b9146
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x64]
add ebx, 0x100
add esi, 4
mov dword [esp + 0x24], ebx
cmp ebx, 0x200
jl 0x100b9130
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x28]
cmp ecx, edx
je 0x100b923a
xor eax, eax
cmp edx, ecx
mov edx, dword [esp + 0x30]
mov ecx, dword [ebx + 0x66e0]
setg al
imul edx, dword [esp + 0xc]
shl eax, 8
add eax, dword [esp + 0x18]
shl eax, 8
add eax, edi
add edx, dword [esp + 0x10]
lea esi, [eax + eax*2]
mov eax, dword [esp + 0x20]
movzx eax, word [eax + esi*2]
mov word [ecx + edx*8], ax
movzx edx, word [ebx + 0x66b6]
imul edx, dword [esp + 0xc]
mov ecx, dword [ebx + 0x66e0]
mov eax, dword [esp + 0x20]
add edx, dword [esp + 0x10]
movzx eax, word [eax + esi*2 + 2]
mov word [ecx + edx*8 + 2], ax
movzx edx, word [ebx + 0x66b6]
imul edx, dword [esp + 0xc]
mov eax, dword [esp + 0x20]
mov ecx, dword [ebx + 0x66e0]
add edx, dword [esp + 0x10]
movzx eax, word [eax + esi*2 + 4]
mov word [ecx + edx*8 + 4], ax
jmp 0x100b92dd
mov ecx, dword [esp + 0x18]
mov eax, ecx
mov edx, dword [esp + 0x20]
shl eax, 8
add eax, edi
lea esi, [eax + eax*2]
lea eax, [ecx + 0x100]
shl eax, 8
add eax, edi
lea eax, [eax + eax*2]
movzx ecx, word [edx + eax*2]
movzx eax, word [edx + esi*2]
mov edx, dword [esp + 0x30]
add ecx, eax
imul edx, dword [esp + 0xc]
mov eax, dword [ebx + 0x66e0]
shr ecx, 1
add edx, dword [esp + 0x10]
mov word [eax + edx*8], cx
mov eax, dword [esp + 0x20]
movzx ecx, word [ebx + 0x66b6]
imul ecx, dword [esp + 0xc]
movzx edx, word [eax + esi*2 + 0x60002]
movzx eax, word [eax + esi*2 + 2]
add edx, eax
mov eax, dword [ebx + 0x66e0]
add ecx, dword [esp + 0x10]
shr edx, 1
mov word [eax + ecx*8 + 2], dx
mov eax, dword [esp + 0x20]
movzx ecx, word [ebx + 0x66b6]
imul ecx, dword [esp + 0xc]
movzx edx, word [eax + esi*2 + 4]
movzx eax, word [eax + esi*2 + 0x60004]
add edx, eax
mov eax, dword [ebx + 0x66e0]
shr edx, 1
add ecx, dword [esp + 0x10]
mov word [eax + ecx*8 + 4], dx
mov ecx, dword [esp + 0x10]
inc edi
mov eax, dword [esp + 0x14]
inc ecx
mov esi, dword [esp + 0x18]
add eax, 0xfd
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], edi
cmp ecx, eax
jl 0x100b9100
mov edx, dword [esp + 0xc]
inc edx
inc esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x18], esi
cmp edx, dword [esp + 0x50]
jl 0x100b90c1
mov edx, dword [esp + 0x14]
movzx eax, word [ebx + 0x66b6]
add edx, 0xfa
movss xmm0, dword [0x10191e4c]
sub eax, 5
movss xmm5, dword [0x10192224]
cmp edx, eax
movss xmm6, dword [0x101921f8]
movss xmm7, dword [0x1019221c]
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x14], edx
jl 0x100b8810
movzx eax, word [ebx + 0x66b4]
add esi, 0xfa
sub eax, 5
mov dword [esp + 0x3c], esi
cmp esi, eax
jl 0x100b87b0
mov ecx, dword [esp + 0x20]
push ecx
call fcn.1012f84b
mov ecx, dword [esp + 0x400e8]
add esp, 4
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1012b4a2
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x2e844]
push str.ahd_interpolate__
push dword [ebx + 0x6278]
push str._s:_Out_of_memory_in__s_n
test eax, eax
je 0x100b93c0
push eax
call fcn.10004160
jmp 0x100b93d0
push 2
call fcn.10139778
add esp, 4
push eax
call fcn.10001240
add esp, 0x10
lea eax, [ebx + 0x2e804]
push 1
push eax
call fcn.1012e0aa
int3