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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10264ee5
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x103230ac]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], edx
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x9960], 0
je 0x10010b20
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x28], eax
mov eax, dword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [0x103c3b8c]
test al, 1
jne 0x1000ffde
or eax, 1
mov dword [0x103c3b8c], eax
mov dword [ebp - 4], 0
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x1000ff09
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1000fefe
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1000fed8
xor edx, edx
test ecx, ecx
je 0x1000fefe
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1000fee5
cmp edi, 0x4e9f1122
je 0x1000ff1f
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x1000fec5
mov ebx, dword [ebp + 0xc]
xor eax, eax
mov dword [0x103c22e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1000ffe3
mov eax, dword [ebp - 0x14]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], esi
cmp dword [eax + 4], esi
jle 0x1000ffb4
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x1000ff69
cmp dword [ecx + 4], 0
jle 0x1000ff69
push 0
mov edx, 0x940131c5
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1000ff66
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x14]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x1000ff72
xor edx, edx
test ecx, ecx
je 0x1000ff9c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x1000ff80
cmp edi, 0x940131c5
je 0x1000ffc7
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x1000ff38
mov ebx, dword [ebp + 0xc]
mov eax, esi
mov dword [0x103c22e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1000ffe3
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov ebx, dword [ebp + 0xc]
mov dword [0x103c22e8], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1000ffe3
mov eax, dword [0x103c22e8]
push dword [eax + ebx]
mov ecx, dword [ebp - 0x28]
call dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
test eax, eax
je 0x10010b20
mov ecx, dword [0x10c0dd10]
add ecx, 0x72c821ae
xor ecx, 0x43f50f5d
mov eax, dword [ecx + 0xf4]
mov dword [ebp - 0x24], eax
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x103c2330]
test al, 1
jne 0x1001015e
or eax, 1
mov dword [0x103c2330], eax
mov dword [ebp - 4], 1
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x10010088
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x1001007d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010057
xor edx, edx
test ecx, ecx
je 0x1001007d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010064
cmp edi, 0xcd2ed041
je 0x1001009e
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x10010044
mov ebx, dword [ebp + 0xc]
xor eax, eax
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10010163
mov eax, dword [ebp - 0x18]
xor esi, esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], esi
cmp dword [eax + 4], esi
jle 0x10010134
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x100100e8
cmp dword [ecx + 4], 0
jle 0x100100e8
push 0
mov edx, 0xa2ccb41a
call fcn.1013c990
add esp, 4
test eax, eax
je 0x100100e5
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x100100f1
xor edx, edx
test ecx, ecx
je 0x1001011c
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010100
cmp edi, 0xa2ccb41a
je 0x10010147
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov esi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x100100b7
mov ebx, dword [ebp + 0xc]
mov eax, esi
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10010163
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x14]
mov ebx, dword [ebp + 0xc]
mov dword [0x103c3c14], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10010163
mov eax, dword [0x103c3c14]
mov ecx, dword [ebp - 0x28]
movsx eax, word [eax + ecx]
mov ecx, dword [ebp - 0x24]
push eax
call dword [ebp - 0x2c]
mov ecx, dword [0x103c22f8]
mov dword [ebp - 0x28], eax
test cl, 1
jne 0x100101b2
or ecx, 1
mov dword [0x103c22f8], ecx
mov dword [ebp - 4], 2
mov ecx, ebx
mov eax, dword [ebx]
mov eax, dword [eax + 0x44]
call eax
mov edx, 0xdf272d79
mov ecx, eax
call fcn.1013cc60
mov dword [0x103c3ba4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x100101b7
mov eax, dword [0x103c3ba4]
test byte [eax + ebx], 8
jne 0x10010b08
mov eax, dword [0x103c2334]
test al, 1
jne 0x10010303
or eax, 1
mov dword [0x103c2334], eax
mov dword [ebp - 4], 3
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x10010234
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x10010229
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010203
xor edx, edx
test ecx, ecx
je 0x10010229
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010210
cmp edi, 0x4e9f1122
je 0x1001024b
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x100101f0
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov dword [0x103c234c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1001030b
mov eax, dword [ebp - 0x18]
xor esi, esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], esi
cmp dword [eax + 4], esi
jle 0x100102e4
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10010295
cmp dword [ecx + 4], 0
jle 0x10010295
push 0
mov edx, 0xddb9e02d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10010292
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x100102a0
xor edx, edx
test ecx, ecx
je 0x100102cc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100102b0
cmp edi, 0xddb9e02d
je 0x100102f8
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
inc edx
mov esi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], ecx
cmp edx, dword [eax + 4]
jl 0x10010264
mov ecx, esi
mov dword [ebp - 0x1c], esi
mov dword [0x103c234c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1001030b
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x14]
jmp 0x10010236
mov eax, dword [0x103c234c]
mov dword [ebp - 0x1c], eax
mov eax, dword [0x103c3c30]
test al, 1
jne 0x1001044a
or eax, 1
mov dword [0x103c3c30], eax
mov dword [ebp - 4], 4
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x10010379
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x1001036e
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010348
xor edx, edx
test ecx, ecx
je 0x1001036e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010355
cmp edi, 0x4e9f1122
je 0x10010390
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x10010335
xor eax, eax
lea ecx, [eax + 1]
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3be8], ecx
jmp 0x10010450
mov eax, dword [ebp - 0x18]
xor esi, esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x20], esi
cmp dword [eax + 4], esi
jle 0x10010438
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x100103e1
cmp dword [ecx + 4], 0
jle 0x100103e1
push 0
mov edx, 0xddb9e02d
call fcn.1013c990
add esp, 4
test eax, eax
je 0x100103de
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x100103f0
xor edx, edx
test ecx, ecx
je 0x1001041c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010400
cmp edi, 0xddb9e02d
je 0x1001043f
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
inc edx
mov esi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x100103b0
mov eax, esi
jmp 0x1001037b
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x14]
jmp 0x1001037b
mov ecx, dword [0x103c3be8]
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x1c]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne 0x10010b08
mov ecx, dword [ebp + 8]
mov eax, dword [0x10c0dd10]
add eax, 0x72c821ae
xor eax, 0x43f50f5d
movd xmm1, dword [ecx + 0x18]
mov ecx, dword [ebp - 0x28]
cvtdq2ps xmm1, xmm1
mov eax, dword [eax + 0xf0]
mulss xmm1, dword [eax + 0x20]
test ecx, ecx
je 0x10010601
mov eax, dword [0x103c2350]
movss xmm0, dword [0x1030b6fc]
mov dword [ebp - 0x2c], 0x3a83126f
test al, 1
jne 0x100105d6
or eax, 1
mov dword [0x103c2350], eax
mov dword [ebp - 4], 5
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x10010514
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10010509
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x100104e3
xor edx, edx
test ecx, ecx
je 0x10010509
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100104f0
cmp edi, 0x72e242a1
je 0x1001052b
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x100104d0
xor edx, edx
mov ecx, dword [ebp - 0x28]
mov dword [0x103c3bf8], edx
mov dword [ebp - 4], 0xffffffff
jmp 0x100105dc
mov eax, dword [ebp - 0x1c]
xor ebx, ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x24], ebx
cmp dword [eax + 4], ebx
jle 0x100105c4
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov edi, dword [eax]
add edi, ecx
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x10010575
cmp dword [ecx + 4], 0
jle 0x10010575
push 0
mov edx, 0xf3e9a9ed
call fcn.1013c990
add esp, 4
test eax, eax
je 0x10010572
mov ecx, dword [edi + 0x2c]
add ecx, eax
add ebx, ecx
mov dword [ebp - 0x18], ebx
mov eax, dword [ebp - 0x1c]
mov esi, dword [edi]
mov ebx, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010580
xor edx, edx
test ecx, ecx
je 0x100105ac
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, ebx
imul ebx, eax, 0x1000193
cmp edx, ecx
jb 0x10010590
cmp ebx, 0xf3e9a9ed
je 0x100105cb
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x20]
inc edx
mov ebx, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], ecx
cmp edx, dword [eax + 4]
jl 0x10010544
mov edx, ebx
jmp 0x10010516
mov edx, dword [edi + 0x2c]
add edx, dword [ebp - 0x18]
jmp 0x10010516
mov edx, dword [0x103c3bf8]
mov esi, dword [ebp + 0xc]
lea eax, [ecx + 0x134]
add ecx, 0x138
cmp byte [edx + esi], 0
cmove ecx, eax
lea eax, [ebp - 0x2c]
comiss xmm0, dword [ecx]
cmovbe eax, ecx
movss xmm6, dword [eax]
jmp 0x10010609
movss xmm6, dword [0x1030bb20]
mov eax, dword [0x103c3bbc]
test al, 1
jne 0x1001074c
or eax, 1
mov dword [0x103c3bbc], eax
mov dword [ebp - 4], 6
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x10010677
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1001066c
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010646
xor edx, edx
test ecx, ecx
je 0x1001066c
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010653
cmp edi, 0x72e242a1
je 0x1001068a
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x10010633
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3be0], eax
jmp 0x10010751
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10010728
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x100106d4
cmp dword [ecx + 4], 0
jle 0x100106d4
push 0
mov edx, 0x9441c788
call fcn.1013c990
add esp, 4
test eax, eax
je 0x100106d1
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x100106e0
xor edx, edx
test ecx, ecx
je 0x1001070c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100106f0
cmp edi, 0x9441c788
je 0x10010738
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x100106a3
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103c3be0], eax
jmp 0x10010751
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103c3be0], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10010751
mov eax, dword [0x103c3be0]
mov ecx, dword [ebp + 0xc]
cmp byte [eax + ecx], 0
je 0x10010762
mulss xmm6, dword [0x1030b800]
mov eax, dword [0x103c3b88]
test al, 1
jne 0x100108a4
or eax, 1
mov dword [0x103c3b88], eax
mov dword [ebp - 4], 7
mov ebx, dword [0x103bf630]
cmp ebx, dword [0x103bf634]
je 0x100107d4
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x100107c9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x100107a3
xor edx, edx
test ecx, ecx
je 0x100107c9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100107b0
cmp edi, 0x72e242a1
je 0x100107e3
add ebx, 4
cmp ebx, dword [0x103bf634]
jne 0x10010790
mov ecx, dword [ebp + 0xc]
xor eax, eax
mov dword [0x103c3c10], eax
jmp 0x100108a9
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10010888
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10010831
cmp dword [ecx + 4], 0
jle 0x10010831
push 0
mov edx, 0xe4f7740e
call fcn.1013c990
add esp, 4
test eax, eax
je 0x1001082e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10010840
xor edx, edx
test ecx, ecx
je 0x1001086c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10010850
cmp edi, 0xe4f7740e
je 0x10010894
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x24]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x10010800
mov ecx, dword [ebp + 0xc]
mov eax, esi
mov dword [0x103c3c10], eax
jmp 0x100108a9
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp + 0xc]
mov dword [0x103c3c10], eax
jmp 0x100108a9
mov eax, dword [0x103c3c10]
movss xmm0, dword [eax + ecx]
movss xmm5, dword [0x1030b86c]
comiss xmm0, xmm5
jb 0x100108c3
mulss xmm6, dword [0x1030b7d4]
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x10010a85
mov edx, dword [ebp + 8]
xorps xmm4, xmm4
comiss xmm1, xmm4
jbe 0x1001092b
movss xmm0, dword [edx + 0x94]
movaps xmm2, xmm5
movss xmm3, dword [edx + 0x98]
subss xmm0, dword [eax + 0x94]
subss xmm3, dword [eax + 0x98]
divss xmm2, xmm1
movss xmm1, dword [edx + 0x9c]
subss xmm1, dword [eax + 0x9c]
mulss xmm0, xmm2
mulss xmm3, xmm2
mulss xmm1, xmm2
movss dword [edx + 0x64], xmm0
movss dword [edx + 0x68], xmm3
movss dword [edx + 0x6c], xmm1
mov ecx, dword [edx + 0x1c]
movss xmm3, dword [0x1030b774]
and ecx, 1
je 0x100109e9
test byte [eax + 0x1c], 1
je 0x100109e2
movss xmm1, dword [eax + 0x374]
xorps xmm2, xmm2
comiss xmm1, xmm4
jbe 0x100109a3
comiss xmm3, xmm1
jbe 0x100109a3
movss xmm0, dword [edx + 0x37c]
ucomiss xmm0, dword [eax + 0x37c]
lahf
test ah, 0x44
jp 0x100109a0
movaps xmm0, xmm5
subss xmm0, xmm1
mulss xmm0, dword [0x1030b7e0]
comiss xmm0, xmm4
jbe 0x100109a0
comiss xmm5, xmm0
mov eax, dword [ebp - 0x10]
jbe 0x100109a3
movaps xmm2, xmm0
addss xmm2, dword [0x1030b808]
mulss xmm2, xmm6
jmp 0x100109a3
mov eax, dword [ebp - 0x10]
movss xmm5, dword [edx + 0x64]
movss xmm1, dword [edx + 0x68]
movaps xmm0, xmm5
mulss xmm0, xmm5
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000e050
comiss xmm0, xmm3
jbe 0x100109e2
comiss xmm2, xmm4
jbe 0x100109e2
divss xmm2, xmm0
mulss xmm5, xmm2
mulss xmm2, dword [edx + 0x68]
movss dword [edx + 0x64], xmm5
movss dword [edx + 0x68], xmm2
mov dword [edx + 0x6c], 0
cmp dword [edx + 0x18], 0xc
jl 0x10010b20
test ecx, ecx
je 0x10010b20
movss xmm1, dword [edx + 0x68]
movss xmm0, dword [edx + 0x64]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000e050
comiss xmm0, xmm3
jbe 0x10010b20
comiss xmm3, dword [edx + 0x25c]
jb 0x10010b20
movss xmm0, dword [eax + 0x268]
ucomiss xmm0, dword [edx + 0x268]
lahf
test ah, 0x44
jp 0x10010b20
movss xmm0, dword [0x1030b6ec]
comiss xmm0, dword [edx + 0x264]
jbe 0x10010b20
mov byte [edx + 0xd], 1
mov dword [edx + 0x6c], 0
mov dword [edx + 0x68], 0
mov dword [edx + 0x64], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 8]
test byte [ecx + 0x1c], 1
je 0x10010b20
movss xmm0, dword [ecx + 0x25c]
xorps xmm4, xmm4
ucomiss xmm0, xmm4
xorps xmm2, xmm2
lahf
test ah, 0x44
jnp 0x10010aac
movaps xmm2, xmm0
movss xmm3, dword [ecx + 0x64]
movss xmm1, dword [ecx + 0x68]
movaps xmm0, xmm3
mulss xmm0, xmm3
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1000e050
comiss xmm0, dword [0x1030b774]
jbe 0x10010aef
comiss xmm2, xmm4
jbe 0x10010aef
divss xmm2, xmm0
mulss xmm3, xmm2
mulss xmm2, dword [ecx + 0x68]
movss dword [ecx + 0x64], xmm3
movss dword [ecx + 0x68], xmm2
mov dword [ecx + 0x6c], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 8]
mov dword [eax + 0x6c], 0
mov dword [eax + 0x68], 0
mov dword [eax + 0x64], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret