Function at 0x1003bad0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1038b7b3
mov eax, dword fs:[0]
push eax
sub esp, 0x68
push esi
push edi
mov eax, dword [0x1049b0c0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x11b92250]
lea edx, [eax - 0x393e67ec]
xor edx, 0x26996288
cmp dword [edx + 0x15c], 0
je 0x1003d903
mov ecx, dword [0x11b9226c]
add ecx, 0xcb8fa14
xor ecx, 0x8617bd34
cmp dword [ecx + 4], 3
jl 0x1003d903
mov ecx, dword [0x1055ce44]
add ecx, 0xaffa2ab8
xor ecx, 0xeba28818
cmp byte [ecx + 0xc5cfd], 0
jne 0x1003d903
mov ecx, dword [0x10541638]
mov edx, dword [edx + 0x154]
mov dword [ebp - 0x38], edx
test cl, 1
jne 0x1003bcac
or ecx, 1
mov dword [0x10541638], ecx
mov dword [ebp - 4], 0
mov ecx, dword [0x1053ebb8]
mov edx, dword [0x1053ebbc]
mov dword [ebp - 0x30], ecx
cmp ecx, edx
je 0x1003bbe2
nop dword [eax + eax]
mov ecx, dword [ecx]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x1003bbd5
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x3c], ecx
xor edx, edx
inc edx
cmp byte [edx + ecx], 0
jne 0x1003bba6
xor esi, esi
test edx, edx
je 0x1003bbcf
movsx ecx, byte [esi + ecx]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x3c]
cmp esi, edx
jb 0x1003bbb3
cmp edi, 0x4e9f1122
je 0x1003bbf9
mov edx, dword [0x1053ebbc]
mov ecx, dword [ebp - 0x30]
add ecx, 4
mov dword [ebp - 0x30], ecx
cmp ecx, edx
jne 0x1003bb90
xor edi, edi
mov edx, dword [ebp - 0x38]
mov dword [0x105446ac], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1003bcb2
mov ecx, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x30], edi
cmp dword [ecx + 4], edi
jle 0x1003bbe4
xor eax, eax
mov dword [ebp - 0x1c], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x3c], esi
test ecx, ecx
je 0x1003bc45
cmp dword [ecx + 4], 0
jle 0x1003bc45
push 0
mov edx, 0x53630d14
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003bc42
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003bc50
xor edx, edx
test ecx, ecx
je 0x1003bc7c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003bc60
cmp esi, 0x53630d14
je 0x1003bc99
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x30]
add eax, 0x3c
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x1c], eax
cmp edx, dword [ecx + 4]
jge 0x1003bca2
jmp 0x1003bc10
mov eax, dword [ebp - 0x3c]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
mov eax, dword [0x11b92250]
jmp 0x1003bbe4
mov edi, dword [0x105446ac]
movss xmm0, dword [edi + edx]
lea ecx, [eax - 0x393e67ec]
xor ecx, 0x26996288
movss dword [ebp - 0x14], xmm0
movss xmm0, dword [edi + edx + 4]
movss dword [ebp - 0x10], xmm0
mov ecx, dword [ecx + 0x154]
mov dword [ebp - 0x38], ecx
mov ecx, dword [0x1054166c]
test cl, 1
jne 0x1003be4b
or ecx, 1
mov dword [0x1054166c], ecx
mov dword [ebp - 4], 1
mov ecx, dword [0x1053ebb8]
mov edx, dword [0x1053ebbc]
mov dword [ebp - 0x30], ecx
cmp ecx, edx
je 0x1003bd62
nop
mov ecx, dword [ecx]
mov dword [ebp - 0x2c], ecx
test ecx, ecx
je 0x1003bd55
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x3c], ecx
xor edx, edx
inc edx
cmp byte [edx + ecx], 0
jne 0x1003bd26
xor esi, esi
test edx, edx
je 0x1003bd4f
movsx ecx, byte [esi + ecx]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x3c]
cmp esi, edx
jb 0x1003bd33
cmp edi, 0x72e242a1
je 0x1003bd76
mov edx, dword [0x1053ebbc]
mov ecx, dword [ebp - 0x30]
add ecx, 4
mov dword [ebp - 0x30], ecx
cmp ecx, edx
jne 0x1003bd10
xor edx, edx
mov dword [ebp - 4], 0xffffffff
mov dword [0x105446e8], edx
jmp 0x1003be51
mov ecx, dword [ebp - 0x2c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x30], edi
cmp dword [ecx + 4], edi
jle 0x1003be1d
xor eax, eax
mov dword [ebp - 0x1c], eax
nop
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x3c], esi
test ecx, ecx
je 0x1003bdc5
cmp dword [ecx + 4], 0
jle 0x1003bdc5
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003bdc2
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003bdd0
xor edx, edx
test ecx, ecx
je 0x1003bdfc
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003bde0
cmp esi, 0xf3e9a9ed
je 0x1003be2e
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x30]
add eax, 0x3c
mov ecx, dword [ebp - 0x2c]
inc edx
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x1c], eax
cmp edx, dword [ecx + 4]
jl 0x1003bd90
mov eax, dword [0x11b92250]
mov edx, edi
mov dword [ebp - 4], 0xffffffff
mov dword [0x105446e8], edx
jmp 0x1003be51
mov eax, dword [ebp - 0x3c]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x18]
mov eax, dword [0x11b92250]
mov dword [0x105446e8], edx
mov dword [ebp - 4], 0xffffffff
jmp 0x1003be51
mov edx, dword [0x105446e8]
mov ecx, dword [ebp - 0x38]
cmp byte [ecx + edx], 0
lea ecx, [eax - 0x393e67ec]
je 0x1003be76
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x15c]
movss xmm0, dword [ecx + 0x138]
jmp 0x1003be8a
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x15c]
movss xmm0, dword [ecx + 0x134]
lea ecx, [eax - 0x393e67ec]
movss dword [ebp - 0x18], xmm0
xor ecx, 0x26996288
cmp byte [0x105236b0], 0
je 0x1003cc2b
mov esi, dword [ecx + 0x160]
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
mov ecx, dword [ecx + 0xc4]
push eax
mov dword [ebp - 0x3c], esi
call fcn.1003b560
movss xmm2, dword [ebp - 0x64]
lea edx, [ebp - 0x40]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x44]
call fcn.10232b00
movss xmm2, dword [ebp - 0x68]
lea edx, [ebp - 0x30]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x48]
call fcn.10232b00
movss xmm2, dword [ebp - 0x60]
lea edx, [ebp - 0x50]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x4c]
call fcn.10232b00
movss xmm3, dword [ebp - 0x40]
movss xmm2, dword [ebp - 0x44]
movaps xmm0, xmm3
mulss xmm0, dword [ebp - 0x30]
movss xmm7, dword [ebp - 0x50]
movss xmm5, dword [ebp - 0x4c]
movss dword [ebp - 0x34], xmm0
movaps xmm1, xmm5
movss xmm0, dword [ebp - 0x30]
mulss xmm1, dword [ebp - 0x48]
mulss xmm0, xmm2
mulss xmm5, dword [0x1046f4c0]
movss dword [ebp - 0x2c], xmm0
movaps xmm0, xmm7
mulss xmm7, dword [0x1046f4c0]
mulss xmm0, xmm2
mulss xmm7, xmm3
movss dword [ebp - 0x1c], xmm0
movaps xmm0, xmm1
movss xmm4, dword [ebp - 0x1c]
mulss xmm0, xmm3
movss xmm3, dword [esi + 0x2c]
mulss xmm1, xmm2
movss xmm2, dword [esi + 0x24]
subss xmm4, xmm0
movss xmm0, dword [esi + 0x28]
subss xmm7, xmm1
movss dword [ebp - 0x28], xmm0
movaps xmm1, xmm0
movss xmm6, dword [ebp - 0x48]
mulss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
xorps xmm6, xmmword [0x1046f8e0]
mulss xmm5, dword [ebp - 0x30]
addss xmm1, xmm0
movss dword [ebp - 0x24], xmm2
movss xmm2, dword [ebp - 0x18]
movaps xmm0, xmm3
mulss xmm0, xmm3
movss dword [ebp - 0x1c], xmm4
movss dword [ebp - 0x20], xmm3
addss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm0, dword [0x1046f018]
comiss xmm1, xmm0
jbe 0x1003c033
xorps xmm0, xmm0
sqrtss xmm0, xmm1
movss xmm1, dword [0x1046f06c]
divss xmm1, xmm0
mulss xmm1, xmm2
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x24], xmm0
movaps xmm0, xmm1
mulss xmm0, dword [ebp - 0x28]
mulss xmm1, xmm3
movss dword [ebp - 0x28], xmm0
movaps xmm3, xmm1
movss dword [ebp - 0x20], xmm1
mov ecx, dword [0x110e5830]
add ecx, 0xaae697be
xor ecx, 0x122398de
add ecx, 0x188
je 0x1003c937
mov eax, dword [0x120746f0]
test al, 1
jne 0x1003c07c
or eax, 1
mov dword [0x120746f0], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x2a4]
mov dword [0x120746ec], eax
cmp dword [ecx + 0x94], 0x7fffffff
je 0x1003c937
mov ecx, dword [0x120746d4]
test cl, 1
jne 0x1003c0bd
or ecx, 1
mov dword [0x120746d4], ecx
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov edx, dword [eax + 0x238]
mov dword [0x120746e8], edx
jmp 0x1003c0c3
mov edx, dword [0x120746e8]
test cl, 2
jne 0x1003c0ee
or ecx, 2
mov dword [0x120746d4], ecx
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov ecx, dword [eax + 0x23c]
mov dword [0x120746cc], ecx
jmp 0x1003c0f4
mov ecx, dword [0x120746cc]
movss xmm3, dword [ebp - 0x14]
xorps xmm2, xmm2
movss xmm1, dword [ebp - 0x10]
movaps xmm0, xmm3
mulss xmm1, xmm1
mulss xmm0, xmm3
movss xmm4, dword [0x1046f104]
addss xmm1, xmm0
sqrtss xmm2, xmm1
comiss xmm2, xmm4
jb 0x1003c1a5
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov dword [ebp - 0x38], eax
movss xmm0, dword [ebp - 0x38]
comiss xmm0, xmm2
ja 0x1003c14b
movss xmm1, xmm2
jmp 0x1003c14f
movss xmm1, xmm0
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mulss xmm1, dword [ebp - 0x18]
mov eax, dword [eax + 0x10c]
movss xmm0, dword [eax + 0x14]
lea ecx, [eax + 0x14]
add eax, 0x20
comiss xmm0, dword [eax]
cmova eax, ecx
mulss xmm1, dword [eax]
divss xmm1, xmm2
subss xmm2, xmm1
xorps xmm1, xmm1
maxss xmm2, xmm1
movaps xmm0, xmm2
mulss xmm2, dword [ebp - 0x10]
mulss xmm0, xmm3
movss dword [ebp - 0x10], xmm2
movss dword [ebp - 0x14], xmm0
jmp 0x1003c1a8
xorps xmm1, xmm1
mov eax, dword [0x120746c4]
test al, 1
jne 0x1003c1d3
or eax, 1
mov dword [0x120746c4], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x264]
mov dword [0x120746f4], eax
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1003c22b
movss xmm3, dword [ebp - 0x2c]
movss xmm2, dword [ebp - 0x34]
movaps xmm1, xmm3
mulss xmm1, xmm3
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm6, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm6
sqrtss xmm0, xmm1
movaps xmm1, xmm4
addss xmm0, dword [0x1046ef5c]
divss xmm1, xmm0
movaps xmm6, xmm1
mulss xmm1, xmm3
mulss xmm6, xmm2
movss dword [ebp - 0x2c], xmm1
xorps xmm1, xmm1
jmp 0x1003c230
movss xmm6, dword [ebp - 0x34]
ucomiss xmm5, xmm1
lahf
test ah, 0x44
jnp 0x1003c27b
movss xmm2, dword [ebp - 0x1c]
movaps xmm1, xmm7
mulss xmm1, xmm7
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm5, xmm5
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm5
sqrtss xmm0, xmm1
movaps xmm1, xmm4
addss xmm0, dword [0x1046ef5c]
divss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm7, xmm1
mulss xmm0, xmm2
jmp 0x1003c280
movss xmm0, dword [ebp - 0x1c]
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x154]
mov dword [ebp - 0x58], eax
mov eax, dword [0x1054166c]
test al, 1
jne 0x1003c3f5
or eax, 1
mov dword [0x1054166c], eax
mov dword [ebp - 4], 2
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1053ebbc]
je 0x1003c30e
mov ecx, dword [eax]
mov dword [ebp - 0x1c], ecx
test ecx, ecx
je 0x1003c300
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003c2d7
xor edx, edx
test ecx, ecx
je 0x1003c300
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c2e4
cmp esi, 0x72e242a1
je 0x1003c324
mov eax, dword [ebp - 0x34]
add eax, 4
mov dword [ebp - 0x34], eax
cmp eax, dword [0x1053ebbc]
jne 0x1003c2c4
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x3c]
mov dword [0x105446e8], eax
jmp 0x1003c3fa
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x34], edi
cmp dword [eax + 4], edi
jle 0x1003c3c8
xor ecx, ecx
mov dword [ebp - 0x38], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x54], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003c374
cmp dword [ecx + 4], 0
jle 0x1003c374
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003c371
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003c380
xor edx, edx
test ecx, ecx
je 0x1003c3ac
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c390
cmp esi, 0xf3e9a9ed
je 0x1003c3db
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x38], ecx
cmp edx, dword [eax + 4]
jl 0x1003c340
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x3c]
mov dword [0x105446e8], eax
jmp 0x1003c3fa
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x3c]
mov dword [0x105446e8], eax
jmp 0x1003c3fa
mov eax, dword [0x105446e8]
mov ecx, dword [ebp - 0x58]
cmp byte [ecx + eax], 0
mov eax, dword [0x11b92250]
je 0x1003c422
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm5, dword [eax + 0x138]
jmp 0x1003c43a
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm5, dword [eax + 0x134]
movss xmm2, dword [ebp - 0x28]
movaps xmm3, xmm2
mulss xmm2, xmm7
mulss xmm3, xmm0
movss xmm0, dword [ebp - 0x24]
mulss xmm0, xmm6
addss xmm3, xmm0
movss xmm0, dword [ebp - 0x24]
mulss xmm0, dword [ebp - 0x2c]
addss xmm2, xmm0
movaps xmm1, xmm3
mulss xmm1, xmm3
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm1, xmm0
sqrtss xmm1, xmm1
movaps xmm0, xmm1
addss xmm0, dword [0x1046ef5c]
divss xmm4, xmm0
movaps xmm0, xmm4
mulss xmm4, xmm2
xorps xmm2, xmm2
mulss xmm0, xmm3
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1003c4a5
minss xmm1, xmm5
mov eax, dword [0x120746dc]
test al, 1
jne 0x1003c4d2
or eax, 1
mov dword [0x120746dc], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x2a0]
mov dword [0x120746d0], eax
jmp 0x1003c4d7
mov eax, dword [0x120746d0]
mulss xmm4, dword [ebp - 0x10]
mov dword [ebp - 0x2c], eax
mulss xmm0, dword [ebp - 0x14]
addss xmm4, xmm0
subss xmm1, xmm4
comiss xmm2, xmm1
jae 0x1003c932
test byte [esi + 0x30], 4
jne 0x1003c70f
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x154]
mov dword [ebp - 0x54], eax
mov eax, dword [0x1054ac1c]
test al, 1
jne 0x1003c665
or eax, 1
mov dword [0x1054ac1c], eax
mov dword [ebp - 4], 3
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003c591
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003c584
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003c558
xor edx, edx
test ecx, ecx
je 0x1003c57e
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c565
cmp esi, 0x72e242a1
je 0x1003c5a5
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003c545
xor edi, edi
mov dword [0x1054ac20], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1003c66b
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003c593
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003c5f4
cmp dword [ecx + 4], 0
jle 0x1003c5f4
push 0
mov edx, 0x8b221170
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003c5f1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003c600
xor edx, edx
test ecx, ecx
je 0x1003c62c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c610
cmp esi, 0x8b221170
je 0x1003c64d
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003c593
jmp 0x1003c5c0
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
mov dword [0x1054ac20], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1003c66b
mov edi, dword [0x1054ac20]
mov eax, dword [ebp - 0x54]
mov al, byte [eax + edi]
test al, al
jne 0x1003c70f
mov eax, dword [0x10544904]
test al, 1
jne 0x1003c70f
or eax, 1
mov dword [0x10544904], eax
mov dword [ebp - 4], 4
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003c700
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003c6f3
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003c6c0
xor edx, edx
test ecx, ecx
je 0x1003c6ed
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c6d0
cmp esi, 0x72e242a1
je 0x1003c964
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003c6a7
xor edi, edi
mov dword [0x10541648], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x1054166c]
test al, 1
jne 0x1003c79f
or eax, 1
mov dword [0x1054166c], eax
mov dword [ebp - 4], 5
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003c790
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003c783
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003c753
xor edx, edx
test ecx, ecx
je 0x1003c77d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c760
cmp esi, 0x72e242a1
je 0x1003ca1b
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003c740
xor edi, edi
mov dword [0x105446e8], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
cmp dword [eax + 0x158], 0
je 0x1003c8ef
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, ecx
je 0x1003c8ef
mov eax, dword [0x10541658]
test al, 1
jne 0x1003c85f
or eax, 1
mov dword [0x10541658], eax
mov dword [ebp - 4], 6
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003c850
nop word [eax + eax]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003c843
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003c813
xor edx, edx
test ecx, ecx
je 0x1003c83d
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c820
cmp esi, 0xcd2ed041
je 0x1003cacb
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003c800
xor edi, edi
mov dword [0x10544910], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x1054ac18]
test al, 1
jne 0x1003c8ef
or eax, 1
mov dword [0x1054ac18], eax
mov dword [ebp - 4], 7
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003c8e0
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1003c8d3
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003c8a3
xor edx, edx
test ecx, ecx
je 0x1003c8cd
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c8b0
cmp esi, 0xea7e6f79
je 0x1003cb7b
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003c890
xor edi, edi
mov dword [0x1054ac14], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov ecx, dword [eax + 0x154]
mov eax, dword [0x1054ac24]
test al, 1
jne 0x1003c932
or eax, 1
mov dword [0x1054ac24], eax
mov dword [ebp - 4], 8
call fcn.100186c0
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.10238e30
mov dword [0x1054ac28], eax
movss xmm3, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
movss xmm2, dword [ebp - 0x24]
movss dword [eax + 0x24], xmm2
movss xmm2, dword [ebp - 0x28]
movss dword [eax + 0x28], xmm2
movss dword [eax + 0x2c], xmm3
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003c702
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003c9b4
cmp dword [ecx + 4], 0
jle 0x1003c9b4
push 0
mov edx, 0xa4a37590
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003c9b1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003c9c0
xor edx, edx
test ecx, ecx
je 0x1003c9ec
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003c9d0
cmp esi, 0xa4a37590
je 0x1003ca0d
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003c702
jmp 0x1003c980
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
jmp 0x1003c702
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003c792
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003ca68
cmp dword [ecx + 4], 0
jle 0x1003ca68
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003ca65
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003ca71
xor edx, edx
test ecx, ecx
je 0x1003ca9c
nop
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003ca80
cmp esi, 0xf3e9a9ed
je 0x1003cabd
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003c792
jmp 0x1003ca34
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
jmp 0x1003c792
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003c852
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003cb18
cmp dword [ecx + 4], 0
jle 0x1003cb18
push 0
mov edx, 0xa2ccb41a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003cb15
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003cb21
xor edx, edx
test ecx, ecx
je 0x1003cb4c
nop
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003cb30
cmp esi, 0xa2ccb41a
je 0x1003cb6d
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003c852
jmp 0x1003cae4
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
jmp 0x1003c852
mov eax, dword [ebp - 0x1c]
xor edi, edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003c8e2
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003cbc8
cmp dword [ecx + 4], 0
jle 0x1003cbc8
push 0
mov edx, 0x444e63a0
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003cbc5
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x18], edi
mov eax, dword [ebp - 0x1c]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003cbd1
xor edx, edx
test ecx, ecx
je 0x1003cbfc
nop
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003cbe0
cmp esi, 0x444e63a0
je 0x1003cc1d
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003c8e2
jmp 0x1003cb94
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x18]
jmp 0x1003c8e2
mov ecx, dword [ecx + 0x154]
mov dword [ebp - 0x54], ecx
mov ecx, dword [0x1054166c]
test cl, 1
jne 0x1003ccce
or ecx, 1
mov dword [0x1054166c], ecx
mov dword [ebp - 4], 9
mov ecx, dword [0x1053ebb8]
mov edx, dword [0x1053ebbc]
mov dword [ebp - 0x3c], ecx
cmp ecx, edx
je 0x1003ccbf
mov ecx, dword [ecx]
mov dword [ebp - 0x38], ecx
test ecx, ecx
je 0x1003ccb2
mov ecx, dword [ecx + 0xc]
mov edi, 0x811c9dc5
mov dword [ebp - 0x58], ecx
xor edx, edx
nop dword [eax]
inc edx
cmp byte [edx + ecx], 0
jne 0x1003cc80
xor esi, esi
test edx, edx
je 0x1003ccac
nop dword [eax]
movsx ecx, byte [esi + ecx]
inc esi
xor ecx, edi
imul edi, ecx, 0x1000193
mov ecx, dword [ebp - 0x58]
cmp esi, edx
jb 0x1003cc90
cmp edi, 0x72e242a1
je 0x1003ccfa
mov edx, dword [0x1053ebbc]
mov ecx, dword [ebp - 0x3c]
add ecx, 4
mov dword [ebp - 0x3c], ecx
cmp ecx, edx
jne 0x1003cc66
xor edx, edx
mov dword [0x105446e8], edx
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x54]
cmp byte [ecx + edx], 0
lea ecx, [eax - 0x393e67ec]
je 0x1003cdb7
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x15c]
movss xmm3, dword [ecx + 0x138]
jmp 0x1003cdcb
mov ecx, dword [ebp - 0x38]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x3c], edi
cmp dword [ecx + 4], edi
jle 0x1003cd9d
xor eax, eax
mov dword [ebp - 0x28], eax
mov esi, dword [ecx]
mov ecx, dword [esi + eax + 0x28]
add esi, eax
mov dword [ebp - 0x58], esi
test ecx, ecx
je 0x1003cd48
cmp dword [ecx + 4], 0
jle 0x1003cd48
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003cd45
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003cd51
xor edx, edx
test ecx, ecx
je 0x1003cd7c
nop
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003cd60
cmp esi, 0xf3e9a9ed
je 0x1003cda4
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
add eax, 0x3c
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x28], eax
cmp edx, dword [ecx + 4]
jl 0x1003cd13
mov eax, dword [0x11b92250]
mov edx, edi
jmp 0x1003ccc1
mov eax, dword [ebp - 0x58]
mov edx, dword [eax + 0x2c]
add edx, dword [ebp - 0x24]
mov eax, dword [0x11b92250]
jmp 0x1003ccc1
xor ecx, 0x26996288
mov ecx, dword [ecx + 0x15c]
movss xmm3, dword [ecx + 0x134]
lea edi, [eax - 0x393e67ec]
movss xmm1, dword [0x1046f1e0]
xor edi, 0x26996288
mov dword [ebp - 0x50], 0x42c80000
lea esi, [ebp - 0x50]
mov dword [ebp - 0x58], 0x42be0000
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov eax, dword [edi + 0x160]
mov ecx, dword [edi + 0x1c]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x6c], 0
mov eax, dword [eax + 4]
cdq
idiv ecx
movd xmm0, ecx
lea ecx, [ebp - 0x58]
cvtdq2ps xmm0, xmm0
movd xmm2, edx
lea edx, [ebp - 0x54]
divss xmm1, xmm0
movss xmm0, dword [0x1046f324]
cvtdq2ps xmm2, xmm2
movss dword [ebp - 0x38], xmm3
mulss xmm2, xmm1
addss xmm2, xmm0
comiss xmm0, xmm2
movss dword [ebp - 0x54], xmm2
seta al
test al, al
cmove ecx, edx
comiss xmm2, dword [0x1046f32c]
seta al
test al, al
lea eax, [ebp - 0x74]
push eax
cmove esi, ecx
mov ecx, dword [edi + 0xc4]
movss xmm0, dword [esi]
mulss xmm0, dword [0x1046efb8]
mulss xmm0, xmm3
movss dword [ebp - 0x24], xmm0
call fcn.1003b560
movss xmm2, dword [ebp - 0x70]
lea edx, [ebp - 0x4c]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x48]
call fcn.10232b00
movss xmm2, dword [ebp - 0x74]
lea edx, [ebp - 0x3c]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x44]
call fcn.10232b00
movss xmm2, dword [ebp - 0x6c]
lea edx, [ebp - 0x5c]
mulss xmm2, dword [0x1046efc0]
lea ecx, [ebp - 0x40]
call fcn.10232b00
movss xmm3, dword [ebp - 0x4c]
movss xmm2, dword [ebp - 0x48]
movaps xmm0, xmm3
mulss xmm0, dword [ebp - 0x3c]
movss xmm7, dword [ebp - 0x5c]
movss xmm5, dword [ebp - 0x40]
movss dword [ebp - 0x34], xmm0
movaps xmm1, xmm5
movss xmm0, dword [ebp - 0x3c]
mulss xmm1, dword [ebp - 0x44]
movss xmm6, dword [ebp - 0x44]
xorps xmm6, xmmword [0x1046f8e0]
mulss xmm0, xmm2
movss dword [ebp - 0x20], xmm0
movaps xmm0, xmm7
mulss xmm7, dword [0x1046f4c0]
mulss xmm0, xmm2
movss dword [ebp - 0x28], xmm0
movaps xmm0, xmm3
movss xmm4, dword [ebp - 0x28]
mulss xmm0, xmm1
subss xmm4, xmm0
movss dword [ebp - 0x28], xmm4
mov edi, dword [ebp - 0x2c]
mulss xmm1, xmm2
mulss xmm5, dword [0x1046f4c0]
movss xmm4, dword [edi + 0x28]
mulss xmm7, xmm3
movaps xmm2, xmm4
movss xmm3, dword [edi + 0x24]
mulss xmm5, dword [ebp - 0x3c]
movaps xmm0, xmm3
mulss xmm0, xmm3
subss xmm7, xmm1
movss xmm1, dword [edi + 0x2c]
mulss xmm2, xmm4
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x18], xmm3
addss xmm2, xmm0
movss dword [ebp - 0x1c], xmm4
movaps xmm0, xmm1
mulss xmm0, xmm1
movss xmm1, dword [ebp - 0x38]
mulss xmm1, xmm1
addss xmm2, xmm0
movss xmm0, dword [esi]
mulss xmm0, xmm0
mulss xmm1, dword [0x1046ef7c]
mulss xmm1, xmm0
comiss xmm2, xmm1
jbe 0x1003cfe4
xorps xmm0, xmm0
movss xmm1, dword [ebp - 0x24]
sqrtss xmm0, xmm2
divss xmm1, xmm0
movss xmm0, dword [ebp - 0x30]
mulss xmm3, xmm1
mulss xmm4, xmm1
mulss xmm0, xmm1
movss dword [ebp - 0x18], xmm3
movss dword [ebp - 0x1c], xmm4
movss dword [ebp - 0x30], xmm0
mov ecx, dword [0x110e5830]
add ecx, 0xaae697be
xor ecx, 0x122398de
add ecx, 0x188
je 0x1003d8ec
mov eax, dword [0x120746f0]
test al, 1
jne 0x1003d02d
or eax, 1
mov dword [0x120746f0], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x2a4]
mov dword [0x120746ec], eax
cmp dword [ecx + 0x94], 0x7fffffff
je 0x1003d8ec
mov ecx, dword [0x120746d4]
test cl, 1
jne 0x1003d06e
or ecx, 1
mov dword [0x120746d4], ecx
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov edx, dword [eax + 0x238]
mov dword [0x120746e8], edx
jmp 0x1003d074
mov edx, dword [0x120746e8]
test cl, 2
jne 0x1003d09f
or ecx, 2
mov dword [0x120746d4], ecx
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov ecx, dword [eax + 0x23c]
mov dword [0x120746cc], ecx
jmp 0x1003d0a5
mov ecx, dword [0x120746cc]
movss xmm1, dword [ebp - 0x10]
xorps xmm2, xmm2
movss xmm0, dword [ebp - 0x14]
mulss xmm1, xmm1
mulss xmm0, xmm0
movss xmm4, dword [0x1046f104]
addss xmm1, xmm0
sqrtss xmm2, xmm1
comiss xmm2, xmm4
jb 0x1003d154
mov eax, dword [edx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, edx
mov dword [ebp - 0x54], eax
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov dword [ebp - 0x58], eax
movss xmm0, dword [ebp - 0x58]
comiss xmm0, xmm2
ja 0x1003d0f9
movss xmm1, xmm2
jmp 0x1003d0fd
movss xmm1, xmm0
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mulss xmm1, dword [ebp - 0x54]
xorps xmm3, xmm3
mov eax, dword [eax + 0x10c]
movss xmm0, dword [eax + 0x14]
lea ecx, [eax + 0x14]
add eax, 0x20
comiss xmm0, dword [eax]
cmova eax, ecx
mulss xmm1, dword [eax]
divss xmm1, xmm2
subss xmm2, xmm1
maxss xmm2, xmm3
movaps xmm0, xmm2
mulss xmm2, dword [ebp - 0x10]
mulss xmm0, dword [ebp - 0x14]
movss dword [ebp - 0x10], xmm2
movss dword [ebp - 0x14], xmm0
jmp 0x1003d157
xorps xmm3, xmm3
mov eax, dword [0x120746c4]
test al, 1
jne 0x1003d182
or eax, 1
mov dword [0x120746c4], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x264]
mov dword [0x120746f4], eax
ucomiss xmm6, xmm3
lahf
test ah, 0x44
jnp 0x1003d1d5
movss xmm2, dword [ebp - 0x34]
movss xmm1, dword [ebp - 0x20]
movaps xmm0, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm2
mulss xmm6, xmm6
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm6
sqrtss xmm0, xmm1
movaps xmm1, xmm4
addss xmm0, dword [0x1046ef5c]
divss xmm1, xmm0
movaps xmm6, xmm1
mulss xmm1, dword [ebp - 0x20]
mulss xmm6, xmm2
movss dword [ebp - 0x20], xmm1
jmp 0x1003d1da
movss xmm6, dword [ebp - 0x34]
ucomiss xmm5, xmm3
lahf
test ah, 0x44
jnp 0x1003d225
movss xmm2, dword [ebp - 0x28]
movaps xmm1, xmm7
mulss xmm1, xmm7
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm5, xmm5
addss xmm1, xmm0
xorps xmm0, xmm0
addss xmm1, xmm5
sqrtss xmm0, xmm1
movaps xmm1, xmm4
addss xmm0, dword [0x1046ef5c]
divss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm7, xmm1
mulss xmm0, xmm2
jmp 0x1003d22a
movss xmm0, dword [ebp - 0x28]
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x154]
mov dword [ebp - 0x54], eax
mov eax, dword [0x1054166c]
test al, 1
jne 0x1003d3a5
or eax, 1
mov dword [0x1054166c], eax
mov dword [ebp - 4], 0xa
mov eax, dword [0x1053ebb8]
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1053ebbc]
je 0x1003d2ba
nop
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x1003d2ac
mov edi, dword [ecx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d283
xor edx, edx
test ecx, ecx
je 0x1003d2ac
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d290
cmp esi, 0x72e242a1
je 0x1003d2d0
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, dword [0x1053ebbc]
jne 0x1003d270
mov edi, dword [ebp - 0x2c]
xor eax, eax
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1003d3aa
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003d378
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003d324
cmp dword [ecx + 4], 0
jle 0x1003d324
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003d321
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003d330
xor edx, edx
test ecx, ecx
je 0x1003d35c
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d340
cmp esi, 0xf3e9a9ed
je 0x1003d38b
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jl 0x1003d2f0
mov eax, edi
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x2c]
mov dword [0x105446e8], eax
jmp 0x1003d3aa
mov eax, dword [ebp - 0x58]
mov edi, dword [ebp - 0x2c]
mov eax, dword [eax + 0x2c]
add eax, dword [ebp - 0x24]
mov dword [0x105446e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1003d3aa
mov eax, dword [0x105446e8]
mov ecx, dword [ebp - 0x54]
cmp byte [ecx + eax], 0
mov eax, dword [0x11b92250]
je 0x1003d3d2
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm5, dword [eax + 0x138]
jmp 0x1003d3ea
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x15c]
movss xmm5, dword [eax + 0x134]
movss xmm2, dword [ebp - 0x1c]
movaps xmm3, xmm2
mulss xmm2, xmm7
mulss xmm3, xmm0
movss xmm0, dword [ebp - 0x18]
mulss xmm0, xmm6
addss xmm3, xmm0
movss xmm0, dword [ebp - 0x18]
mulss xmm0, dword [ebp - 0x20]
addss xmm2, xmm0
movaps xmm1, xmm3
mulss xmm1, xmm3
movaps xmm0, xmm2
mulss xmm0, xmm2
addss xmm1, xmm0
sqrtss xmm1, xmm1
movaps xmm0, xmm1
addss xmm0, dword [0x1046ef5c]
divss xmm4, xmm0
movaps xmm0, xmm4
mulss xmm4, xmm2
xorps xmm2, xmm2
mulss xmm0, xmm3
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1003d455
minss xmm1, xmm5
mov eax, dword [0x120746dc]
test al, 1
jne 0x1003d482
or eax, 1
mov dword [0x120746dc], eax
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x2a0]
mov dword [0x120746d0], eax
jmp 0x1003d487
mov eax, dword [0x120746d0]
mulss xmm4, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
mulss xmm0, dword [ebp - 0x14]
addss xmm4, xmm0
subss xmm1, xmm4
comiss xmm2, xmm1
jae 0x1003d8e2
test byte [edi + 0x30], 4
jne 0x1003d6bf
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov eax, dword [eax + 0x154]
mov dword [ebp - 0x54], eax
mov eax, dword [0x1054ac1c]
test al, 1
jne 0x1003d615
or eax, 1
mov dword [0x1054ac1c], eax
mov dword [ebp - 4], 0xb
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003d541
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1003d534
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d508
xor edx, edx
test ecx, ecx
je 0x1003d52e
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d515
cmp esi, 0x72e242a1
je 0x1003d555
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003d4f5
xor edi, edi
mov dword [0x1054ac20], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1003d61b
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003d543
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop word [eax + eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003d5a4
cmp dword [ecx + 4], 0
jle 0x1003d5a4
push 0
mov edx, 0x8b221170
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003d5a1
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d5b0
xor edx, edx
test ecx, ecx
je 0x1003d5dc
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d5c0
cmp esi, 0x8b221170
je 0x1003d5fd
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003d543
jmp 0x1003d570
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
mov dword [0x1054ac20], edi
mov dword [ebp - 4], 0xffffffff
jmp 0x1003d61b
mov edi, dword [0x1054ac20]
mov eax, dword [ebp - 0x54]
mov al, byte [eax + edi]
test al, al
jne 0x1003d6bf
mov eax, dword [0x10544904]
test al, 1
jne 0x1003d6bf
or eax, 1
mov dword [0x10544904], eax
mov dword [ebp - 4], 0xc
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003d6b0
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1003d6a3
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d670
xor edx, edx
test ecx, ecx
je 0x1003d69d
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d680
cmp esi, 0x72e242a1
je 0x1003d914
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003d657
xor edi, edi
mov dword [0x10541648], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x1054166c]
test al, 1
jne 0x1003d74f
or eax, 1
mov dword [0x1054166c], eax
mov dword [ebp - 4], 0xd
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x38], eax
cmp eax, ecx
je 0x1003d740
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1003d733
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003d703
xor edx, edx
test ecx, ecx
je 0x1003d72d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d710
cmp esi, 0x72e242a1
je 0x1003d9cb
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x38]
add eax, 4
mov dword [ebp - 0x38], eax
cmp eax, ecx
jne 0x1003d6f0
xor edi, edi
mov dword [0x105446e8], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
cmp dword [eax + 0x158], 0
je 0x1003d89f
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x30]
xor eax, ecx
je 0x1003d89f
mov eax, dword [0x10541658]
test al, 1
jne 0x1003d80f
or eax, 1
mov dword [0x10541658], eax
mov dword [ebp - 4], 0xe
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x3c], eax
cmp eax, ecx
je 0x1003d800
nop word [eax + eax]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1003d7f3
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d7c3
xor edx, edx
test ecx, ecx
je 0x1003d7ed
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d7d0
cmp esi, 0xcd2ed041
je 0x1003da7b
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x3c]
add eax, 4
mov dword [ebp - 0x3c], eax
cmp eax, ecx
jne 0x1003d7b0
xor edi, edi
mov dword [0x10544910], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x1054ac18]
test al, 1
jne 0x1003d89f
or eax, 1
mov dword [0x1054ac18], eax
mov dword [ebp - 4], 0xf
mov eax, dword [0x1053ebb8]
mov ecx, dword [0x1053ebbc]
mov dword [ebp - 0x3c], eax
cmp eax, ecx
je 0x1003d890
nop dword [eax]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x1003d883
mov edi, dword [eax + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003d853
xor edx, edx
test ecx, ecx
je 0x1003d87d
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d860
cmp esi, 0xea7e6f79
je 0x1003db2b
mov ecx, dword [0x1053ebbc]
mov eax, dword [ebp - 0x3c]
add eax, 4
mov dword [ebp - 0x3c], eax
cmp eax, ecx
jne 0x1003d840
xor edi, edi
mov dword [0x1054ac14], edi
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov ecx, dword [eax + 0x154]
mov eax, dword [0x1054ac24]
test al, 1
jne 0x1003d8e2
or eax, 1
mov dword [0x1054ac24], eax
mov dword [ebp - 4], 0x10
call fcn.100186c0
mov edx, 0x3a5ab60e
mov ecx, eax
call fcn.10238e30
mov dword [0x1054ac28], eax
movss xmm3, dword [ebp - 0x18]
movss xmm4, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
movss xmm0, dword [ebp - 0x30]
movss dword [eax + 0x24], xmm3
movss dword [eax + 0x28], xmm4
movss dword [eax + 0x2c], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003d6b2
xor ecx, ecx
mov dword [ebp - 0x34], ecx
nop dword [eax]
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003d964
cmp dword [ecx + 4], 0
jle 0x1003d964
push 0
mov edx, 0xa4a37590
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003d961
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
nop dword [eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003d970
xor edx, edx
test ecx, ecx
je 0x1003d99c
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003d980
cmp esi, 0xa4a37590
je 0x1003d9bd
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003d6b2
jmp 0x1003d930
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1003d6b2
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], edi
cmp dword [eax + 4], edi
jle 0x1003d742
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x58], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003da18
cmp dword [ecx + 4], 0
jle 0x1003da18
push 0
mov edx, 0xf3e9a9ed
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003da15
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003da21
xor edx, edx
test ecx, ecx
je 0x1003da4c
nop
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003da30
cmp esi, 0xf3e9a9ed
je 0x1003da6d
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], ecx
cmp edx, dword [eax + 4]
jge 0x1003d742
jmp 0x1003d9e4
mov eax, dword [ebp - 0x58]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1003d742
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x3c], edi
cmp dword [eax + 4], edi
jle 0x1003d802
xor ecx, ecx
mov dword [ebp - 0x38], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x5c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003dac8
cmp dword [ecx + 4], 0
jle 0x1003dac8
push 0
mov edx, 0xa2ccb41a
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003dac5
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [edi + ecx], 0
jne 0x1003dad1
xor edx, edx
test ecx, ecx
je 0x1003dafc
nop
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003dae0
cmp esi, 0xa2ccb41a
je 0x1003db1d
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], ecx
cmp edx, dword [eax + 4]
jge 0x1003d802
jmp 0x1003da94
mov eax, dword [ebp - 0x5c]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1003d802
mov eax, dword [ebp - 0x28]
xor edi, edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x3c], edi
cmp dword [eax + 4], edi
jle 0x1003d892
xor ecx, ecx
mov dword [ebp - 0x38], ecx
mov esi, dword [eax]
add esi, ecx
mov dword [ebp - 0x5c], esi
mov ecx, dword [esi + 0x28]
test ecx, ecx
je 0x1003db78
cmp dword [ecx + 4], 0
jle 0x1003db78
push 0
mov edx, 0x444e63a0
call fcn.10238b60
add esp, 4
test eax, eax
je 0x1003db75
mov ecx, dword [esi + 0x2c]
add ecx, eax
add edi, ecx
mov dword [ebp - 0x24], edi
mov eax, dword [ebp - 0x28]
mov edi, dword [esi]
xor ecx, ecx
mov esi, 0x811c9dc5
inc ecx
cmp byte [ecx + edi], 0
jne 0x1003db81
xor edx, edx
test ecx, ecx
je 0x1003dbac
nop
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x1003db90
cmp esi, 0x444e63a0
je 0x1003dbcd
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x38]
inc edx
mov edi, dword [ebp - 0x24]
add ecx, 0x3c
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], ecx
cmp edx, dword [eax + 4]
jge 0x1003d892
jmp 0x1003db44
mov eax, dword [ebp - 0x5c]
mov edi, dword [eax + 0x2c]
add edi, dword [ebp - 0x24]
jmp 0x1003d892