Function at 0x10041b70
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
lea ebp, [esp - 0x64]
sub esp, 0x64
push 0xffffffffffffffff
push 0x10076f48
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x10086010]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp + 0x54], ebx
cmp byte [ebx + 0x13c], 0
jne 0x10042b71
lea ecx, [ebp + 0x20]
call fcn.1003da30
lea ecx, [ebp]
mov dword [ebp - 4], 0
call fcn.1003da30
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.1003da30
mov byte [ebp - 4], 2
push dword [ebx + 0x108]
mov dword [ebx + 0x110], 0
mov dword [ebx + 0x10c], 2
call fcn.10068498
mov eax, dword [ebx + 0x10c]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 0x108], eax
push dword [ebx + 0x118]
mov dword [ebx + 0x120], 0
mov dword [ebx + 0x11c], 2
call fcn.10068498
mov eax, dword [ebx + 0x11c]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 0x118], eax
push dword [ebx + 0x128]
mov dword [ebx + 0x130], 0
mov dword [ebx + 0x12c], 2
call fcn.10068498
mov eax, dword [ebx + 0x12c]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 0x128], eax
add esp, 0x18
mov eax, dword [ebx + 0x10]
xor edi, edi
mov dword [ebp + 0x60], eax
test eax, eax
je 0x10041edb
cmp edi, eax
jae 0x10041cb2
mov ecx, dword [ebx + 8]
nop dword [eax]
cmp byte [ecx + edi], 0xff
je 0x10041c9d
inc edi
cmp edi, eax
jb 0x10041c90
jmp 0x10041cb0
cmp edi, eax
jae 0x10041cb2
cmp byte [ecx + eax - 1], 0xff
jne 0x10041cb0
dec eax
mov dword [ebp + 0x60], eax
cmp edi, eax
jb 0x10041ca1
cmp edi, eax
je 0x10041edb
mov ecx, dword [ebx + 8]
lea esi, [edi + edi*2]
dec eax
shl esi, 3
mov dword [ebp + 0x60], eax
mov al, byte [ecx + eax]
mov byte [ecx + edi], al
mov edx, dword [ebp + 0x60]
mov ecx, dword [ebx + 0x18]
lea eax, [edx + edx*2]
lea eax, [ecx + eax*8]
add ecx, esi
cmp ecx, eax
je 0x10041cfc
movsd xmm0, qword [eax]
movsd qword [ecx], xmm0
movsd xmm0, qword [eax + 8]
movsd qword [ecx + 8], xmm0
movsd xmm0, qword [eax + 0x10]
movsd qword [ecx + 0x10], xmm0
mov edx, dword [ebp + 0x60]
mov ecx, dword [ebx + 0x28]
lea eax, [edx + edx*2]
lea eax, [ecx + eax*8]
add ecx, esi
cmp ecx, eax
je 0x10041d2a
movsd xmm0, qword [eax]
movsd qword [ecx], xmm0
movsd xmm0, qword [eax + 8]
movsd qword [ecx + 8], xmm0
movsd xmm0, qword [eax + 0x10]
movsd qword [ecx + 0x10], xmm0
mov edx, dword [ebp + 0x60]
mov eax, dword [ebx + 0x38]
mov ecx, edi
shl ecx, 4
mov dword [ebp + 0x5c], ecx
movsd xmm0, qword [eax + edx*8]
movsd qword [eax + edi*8], xmm0
mov eax, dword [ebx + 0xd8]
mov edx, dword [ebp + 0x60]
mov esi, edx
shl esi, 4
add esi, eax
lea ebx, [ecx + eax]
cmp esi, ebx
je 0x10041da5
mov eax, dword [ebx + 8]
cmp eax, dword [esi + 8]
je 0x10041d7e
push dword [ebx + 4]
call fcn.10068498
mov eax, dword [esi + 8]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 4], eax
add esp, 8
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
xor edx, edx
mov dword [ebx + 0xc], eax
cmp dword [esi + 0xc], edx
jbe 0x10041da2
nop dword [eax + eax]
mov eax, dword [esi + 4]
mov ecx, dword [ebx + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0xc]
jb 0x10041d90
mov edx, dword [ebp + 0x60]
mov eax, dword [ebp + 0x54]
mov esi, edx
mov ebx, dword [ebp + 0x5c]
shl esi, 4
mov eax, dword [eax + 0xe8]
add esi, eax
add ebx, eax
cmp esi, ebx
je 0x10041e08
mov eax, dword [ebx + 8]
cmp eax, dword [esi + 8]
je 0x10041de6
push dword [ebx + 4]
call fcn.10068498
mov eax, dword [esi + 8]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 4], eax
add esp, 8
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
xor edx, edx
mov dword [ebx + 0xc], eax
cmp dword [esi + 0xc], edx
jbe 0x10041e05
mov eax, dword [esi + 4]
mov ecx, dword [ebx + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0xc]
jb 0x10041df3
mov edx, dword [ebp + 0x60]
movzx eax, dl
xor eax, 0x811c9dc5
mov ebx, dword [ebp + 0x2c]
imul ecx, eax, 0x1000193
movzx eax, dh
mov esi, dword [ebp + 0x24]
xor ecx, eax
movzx eax, byte [ebp + 0x62]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp + 0x63]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul ecx, ecx, 0x1000193
and ecx, dword [ebp + 0x38]
mov eax, dword [ebx + ecx*8]
add ecx, ecx
mov dword [ebp + 0x5c], ecx
nop word [eax + eax]
cmp dword [ebx + ecx*4], esi
jne 0x10041e59
mov ecx, esi
jmp 0x10041e5f
mov ecx, dword [ebx + ecx*4 + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x10041e7c
cmp dword [eax + 8], edx
je 0x10041e6f
mov eax, dword [eax]
mov ecx, dword [ebp + 0x5c]
jmp 0x10041e50
cmp eax, esi
je 0x10041e7c
mov dword [ebp + 0x40], eax
mov byte [ebp + 0x44], 0
jmp 0x10041ec9
mov esi, dword [esi]
lea eax, [ebp + 0x60]
push ecx
mov dword [ebp + 0x5c], eax
lea eax, [ebp + 0x5c]
push eax
mov ebx, dword [esi + 4]
push ecx
push ebx
push esi
call fcn.1003fc50
mov edx, dword [ebp + 0x28]
mov ecx, 0xffffffe
sub ecx, edx
cmp ecx, 1
jb 0x10042b84
inc edx
lea ecx, [ebp + 0x20]
mov dword [ebp + 0x28], edx
mov dword [esi + 4], eax
mov dword [ebx], eax
mov eax, dword [ebp + 0x24]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.1003f850
mov eax, dword [ebp + 0x40]
mov ebx, dword [ebp + 0x54]
mov dword [eax + 0xc], edi
inc edi
mov eax, dword [ebp + 0x60]
cmp edi, eax
jb 0x10041c89
mov ecx, dword [ebx + 0xc]
mov dword [ebx + 0x10], edi
test edi, edi
jne 0x10041ef1
mov dword [ebx + 0xc], 1
lea eax, [edi + 1]
jmp 0x10041ef6
mov dword [ebx + 0xc], edi
mov eax, edi
cmp eax, ecx
je 0x10041f19
mov esi, dword [ebx + 8]
push eax
call fcn.1006848d
push dword [ebx + 0x10]
mov dword [ebx + 8], eax
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x1c]
mov dword [ebx + 0x20], edi
test edi, edi
jne 0x10041f2f
mov dword [ebx + 0x1c], 1
lea eax, [edi + 1]
jmp 0x10041f34
mov dword [ebx + 0x1c], edi
mov eax, edi
cmp eax, ecx
je 0x10041f64
mov esi, dword [ebx + 0x18]
lea eax, [eax + eax*2]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x20]
mov dword [ebx + 0x18], eax
lea ecx, [ecx + ecx*2]
shl ecx, 3
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x2c]
mov dword [ebx + 0x30], edi
test edi, edi
jne 0x10041f7a
mov dword [ebx + 0x2c], 1
lea eax, [edi + 1]
jmp 0x10041f7f
mov dword [ebx + 0x2c], edi
mov eax, edi
cmp eax, ecx
je 0x10041faf
mov esi, dword [ebx + 0x28]
lea eax, [eax + eax*2]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x30]
mov dword [ebx + 0x28], eax
lea ecx, [ecx + ecx*2]
shl ecx, 3
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x3c]
mov dword [ebx + 0x40], edi
test edi, edi
jne 0x10041fc5
mov dword [ebx + 0x3c], 1
lea eax, [edi + 1]
jmp 0x10041fca
mov dword [ebx + 0x3c], edi
mov eax, edi
cmp eax, ecx
je 0x10041ff4
mov esi, dword [ebx + 0x38]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x40]
shl ecx, 3
push ecx
push esi
push eax
mov dword [ebx + 0x38], eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
push edi
lea ecx, [ebx + 0xd4]
call fcn.100438c0
push edi
lea ecx, [ebx + 0xe4]
call fcn.100438c0
mov edx, dword [ebx + 0x50]
xor edi, edi
mov dword [ebp + 0x60], edx
test edx, edx
je 0x100421fb
cmp edi, edx
jae 0x10042051
mov ecx, dword [ebx + 0x48]
lea eax, [ecx + edi*8]
cmp dword [eax], 0xffffffff
je 0x10042035
inc edi
add eax, 8
cmp edi, edx
jb 0x10042026
jmp 0x1004204f
cmp edi, edx
jae 0x10042051
nop dword [eax]
cmp dword [ecx + edx*8 - 8], 0xffffffff
jne 0x1004204f
dec edx
mov dword [ebp + 0x60], edx
cmp edi, edx
jb 0x10042040
cmp edi, edx
je 0x100421fb
mov ecx, dword [ebx + 0x48]
dec edx
mov dword [ebp + 0x60], edx
mov eax, dword [ecx + edx*8]
mov dword [ecx + edi*8], eax
mov eax, dword [ecx + edx*8 + 4]
mov dword [ecx + edi*8 + 4], eax
mov ecx, dword [ebx + 0x68]
mov eax, dword [ebp + 0x60]
movsd xmm0, qword [ecx + eax*8]
movsd qword [ecx + edi*8], xmm0
mov ecx, dword [ebx + 0x78]
mov eax, dword [ebp + 0x60]
movsd xmm0, qword [ecx + eax*8]
movsd qword [ecx + edi*8], xmm0
mov esi, dword [ebp + 0x60]
mov ecx, dword [ebx + 0x58]
lea eax, [esi + esi*2]
lea edx, [ecx + eax*8]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*8]
cmp eax, edx
je 0x100420c1
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
movsd xmm0, qword [edx + 8]
movsd qword [eax + 8], xmm0
movsd xmm0, qword [edx + 0x10]
movsd qword [eax + 0x10], xmm0
mov esi, dword [ebp + 0x60]
mov eax, dword [ebx + 0xf8]
mov ebx, edi
shl esi, 4
shl ebx, 4
add esi, eax
add ebx, eax
cmp esi, ebx
je 0x10042122
mov eax, dword [ebx + 8]
cmp eax, dword [esi + 8]
je 0x100420ff
push dword [ebx + 4]
call fcn.10068498
mov eax, dword [esi + 8]
shl eax, 2
push eax
call fcn.1006848d
mov dword [ebx + 4], eax
add esp, 8
mov eax, dword [esi + 8]
mov dword [ebx + 8], eax
mov eax, dword [esi + 0xc]
xor edx, edx
mov dword [ebx + 0xc], eax
cmp dword [esi + 0xc], edx
jbe 0x10042122
nop dword [eax]
mov eax, dword [esi + 4]
mov ecx, dword [ebx + 4]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [esi + 0xc]
jb 0x10042110
mov ebx, dword [ebp + 0x60]
movzx eax, bl
xor eax, 0x811c9dc5
mov esi, dword [ebp + 0xc]
imul ecx, eax, 0x1000193
movzx eax, bh
mov edx, dword [ebp + 4]
xor ecx, eax
movzx eax, byte [ebp + 0x62]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebp + 0x63]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebp + 0x18]
and ecx, eax
mov eax, dword [esi + ecx*8]
add ecx, ecx
mov dword [ebp + 0x5c], ecx
nop dword [eax]
cmp dword [esi + ecx*4], edx
jne 0x10042179
mov ecx, edx
jmp 0x1004217f
mov ecx, dword [esi + ecx*4 + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004219c
cmp dword [eax + 8], ebx
je 0x1004218f
mov eax, dword [eax]
mov ecx, dword [ebp + 0x5c]
jmp 0x10042170
cmp eax, edx
je 0x1004219c
mov dword [ebp + 0x40], eax
mov byte [ebp + 0x44], 0
jmp 0x100421e9
mov esi, dword [edx]
lea eax, [ebp + 0x60]
push ecx
mov dword [ebp + 0x5c], eax
lea eax, [ebp + 0x5c]
push eax
mov ebx, dword [esi + 4]
push ecx
push ebx
push esi
call fcn.1003fc50
mov edx, dword [ebp + 8]
mov ecx, 0xffffffe
sub ecx, edx
cmp ecx, 1
jb 0x10042b84
inc edx
lea ecx, [ebp]
mov dword [ebp + 8], edx
mov dword [esi + 4], eax
mov dword [ebx], eax
mov eax, dword [ebp + 4]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.1003f850
mov eax, dword [ebp + 0x40]
mov ebx, dword [ebp + 0x54]
mov dword [eax + 0xc], edi
inc edi
mov edx, dword [ebp + 0x60]
cmp edi, edx
jb 0x10042020
mov ecx, dword [ebx + 0x4c]
mov dword [ebx + 0x50], edi
test edi, edi
jne 0x10042211
mov dword [ebx + 0x4c], 1
lea eax, [edi + 1]
jmp 0x10042216
mov dword [ebx + 0x4c], edi
mov eax, edi
cmp eax, ecx
je 0x10042240
mov esi, dword [ebx + 0x48]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x50]
shl ecx, 3
push ecx
push esi
push eax
mov dword [ebx + 0x48], eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x6c]
mov dword [ebx + 0x70], edi
test edi, edi
jne 0x10042256
mov dword [ebx + 0x6c], 1
lea eax, [edi + 1]
jmp 0x1004225b
mov dword [ebx + 0x6c], edi
mov eax, edi
cmp eax, ecx
je 0x10042285
mov esi, dword [ebx + 0x68]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x70]
shl ecx, 3
push ecx
push esi
push eax
mov dword [ebx + 0x68], eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x7c]
mov dword [ebx + 0x80], edi
test edi, edi
jne 0x1004229e
mov dword [ebx + 0x7c], 1
lea eax, [edi + 1]
jmp 0x100422a3
mov dword [ebx + 0x7c], edi
mov eax, edi
cmp eax, ecx
je 0x100422d0
mov esi, dword [ebx + 0x78]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x80]
shl ecx, 3
push ecx
push esi
push eax
mov dword [ebx + 0x78], eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x5c]
mov dword [ebx + 0x60], edi
test edi, edi
jne 0x100422e6
mov dword [ebx + 0x5c], 1
lea eax, [edi + 1]
jmp 0x100422eb
mov dword [ebx + 0x5c], edi
mov eax, edi
cmp eax, ecx
je 0x1004231b
mov esi, dword [ebx + 0x58]
lea eax, [eax + eax*2]
shl eax, 3
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x60]
mov dword [ebx + 0x58], eax
lea ecx, [ecx + ecx*2]
shl ecx, 3
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
push edi
lea ecx, [ebx + 0xf4]
call fcn.100438c0
mov esi, dword [ebx + 0x90]
xor edi, edi
mov dword [ebp + 0x60], esi
test esi, esi
je 0x1004258a
cmp edi, esi
jae 0x10042377
mov ecx, dword [ebx + 0x88]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*4]
nop word [eax + eax]
cmp dword [eax], 0xffffffff
je 0x1004235f
inc edi
add eax, 0xc
cmp edi, esi
jb 0x10042350
jmp 0x10042375
cmp edi, esi
jae 0x10042377
lea eax, [esi + esi*2]
cmp dword [ecx + eax*4 - 0xc], 0xffffffff
jne 0x10042375
dec esi
mov dword [ebp + 0x60], esi
cmp edi, esi
jb 0x10042363
cmp edi, esi
je 0x1004258a
mov ecx, dword [ebx + 0x88]
lea edx, [edi + edi*2]
dec esi
mov dword [ebp + 0x60], esi
lea eax, [esi + esi*2]
movq xmm0, qword [ecx + eax*4]
movq qword [ecx + edx*4], xmm0
mov eax, dword [ecx + eax*4 + 8]
mov dword [ecx + edx*4 + 8], eax
mov ecx, dword [ebx + 0x98]
mov eax, dword [ebp + 0x60]
lea eax, [eax + eax*2]
movq xmm0, qword [ecx + eax*4]
movq qword [ecx + edx*4], xmm0
mov eax, dword [ecx + eax*4 + 8]
mov dword [ecx + edx*4 + 8], eax
lea edx, [edi + edi*4]
mov eax, dword [ebp + 0x60]
mov ecx, dword [ebx + 0xa8]
shl edx, 4
add edx, ecx
lea eax, [eax + eax*4]
shl eax, 4
add eax, ecx
cmp edx, eax
je 0x100423f6
movsd xmm0, qword [eax]
movsd qword [edx], xmm0
movsd xmm0, qword [eax + 8]
movsd qword [edx + 8], xmm0
movsd xmm0, qword [eax + 0x10]
movsd qword [edx + 0x10], xmm0
lea ecx, [eax + 0x18]
lea esi, [edx + 0x18]
cmp esi, ecx
je 0x1004241c
movsd xmm0, qword [ecx]
movsd qword [esi], xmm0
movsd xmm0, qword [ecx + 8]
movsd qword [esi + 8], xmm0
movsd xmm0, qword [ecx + 0x10]
movsd qword [esi + 0x10], xmm0
movsd xmm0, qword [eax + 0x30]
movsd qword [edx + 0x30], xmm0
movsd xmm0, qword [eax + 0x38]
movsd qword [edx + 0x38], xmm0
movsd xmm0, qword [eax + 0x40]
movsd qword [edx + 0x40], xmm0
movsd xmm0, qword [eax + 0x48]
movsd qword [edx + 0x48], xmm0
mov esi, dword [ebp + 0x60]
mov ecx, dword [ebx + 0xb8]
lea eax, [esi + esi*2]
lea edx, [ecx + eax*8]
lea eax, [edi + edi*2]
lea eax, [ecx + eax*8]
cmp eax, edx
je 0x1004247c
movsd xmm0, qword [edx]
movsd qword [eax], xmm0
movsd xmm0, qword [edx + 8]
movsd qword [eax + 8], xmm0
movsd xmm0, qword [edx + 0x10]
movsd qword [eax + 0x10], xmm0
mov esi, dword [ebp + 0x60]
mov eax, dword [ebx + 0xc8]
movsd xmm0, qword [eax + esi*8]
movsd qword [eax + edi*8], xmm0
mov edx, dword [ebp + 0x60]
movzx eax, dl
xor eax, 0x811c9dc5
mov esi, dword [ebp + 0x60]
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x10
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebp - 0x14]
and ecx, eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + ecx*8]
lea edx, [ecx + ecx]
mov ecx, dword [ebp - 0x20]
mov dword [ebp + 0x58], edx
mov edx, dword [ecx + edx*4]
mov dword [ebp + 0x5c], edx
mov edx, dword [ebp - 0x28]
nop word [eax + eax]
cmp dword [ebp + 0x5c], edx
jne 0x100424f9
mov ecx, edx
jmp 0x10042505
mov ebx, dword [ebp + 0x58]
mov ecx, dword [ecx + ebx*4 + 4]
mov ebx, dword [ebp + 0x54]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x10042522
cmp dword [eax + 8], esi
je 0x10042515
mov eax, dword [eax]
mov ecx, dword [ebp - 0x20]
jmp 0x100424f0
cmp eax, edx
je 0x10042522
mov dword [ebp + 0x40], eax
mov byte [ebp + 0x44], 0
jmp 0x1004257b
mov esi, dword [edx]
lea eax, [ebp + 0x60]
push ecx
lea ecx, [ebp + 0x5c]
mov dword [ebp + 0x5c], eax
push ecx
mov eax, dword [esi + 4]
push ecx
push eax
push esi
mov dword [ebp + 0x58], eax
call fcn.1003fc50
mov edx, dword [ebp - 0x24]
mov ecx, 0xffffffe
sub ecx, edx
mov dword [ebp + 0x5c], eax
cmp ecx, 1
jb 0x10042b84
mov ecx, dword [ebp + 0x5c]
inc edx
mov dword [ebp - 0x24], edx
mov dword [esi + 4], eax
mov eax, dword [ebp + 0x58]
mov dword [eax], ecx
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
push eax
add eax, 8
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.1003f850
mov eax, dword [ebp + 0x40]
mov dword [eax + 0xc], edi
inc edi
mov esi, dword [ebp + 0x60]
cmp edi, esi
jb 0x1004233e
mov ecx, dword [ebx + 0x8c]
mov dword [ebx + 0x90], edi
test edi, edi
jne 0x100425a9
mov dword [ebx + 0x8c], 1
lea eax, [edi + 1]
jmp 0x100425b1
mov dword [ebx + 0x8c], edi
mov eax, edi
cmp eax, ecx
je 0x100425ea
mov esi, dword [ebx + 0x88]
lea eax, [eax + eax*2]
shl eax, 2
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0x90]
mov dword [ebx + 0x88], eax
lea ecx, [ecx + ecx*2]
shl ecx, 2
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0x9c]
mov dword [ebx + 0xa0], edi
test edi, edi
jne 0x10042609
mov dword [ebx + 0x9c], 1
lea eax, [edi + 1]
jmp 0x10042611
mov dword [ebx + 0x9c], edi
mov eax, edi
cmp eax, ecx
je 0x1004264a
mov esi, dword [ebx + 0x98]
lea eax, [eax + eax*2]
shl eax, 2
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0xa0]
mov dword [ebx + 0x98], eax
lea ecx, [ecx + ecx*2]
shl ecx, 2
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
mov ecx, dword [ebx + 0xac]
mov dword [ebx + 0xb0], edi
test edi, edi
jne 0x10042669
mov dword [ebx + 0xac], 1
lea eax, [edi + 1]
jmp 0x10042671
mov dword [ebx + 0xac], edi
mov eax, edi
cmp eax, ecx
je 0x100426aa
mov esi, dword [ebx + 0xa8]
lea eax, [eax + eax*4]
shl eax, 4
push eax
call fcn.1006848d
mov ecx, dword [ebx + 0xb0]
mov dword [ebx + 0xa8], eax
lea ecx, [ecx + ecx*4]
shl ecx, 4
push ecx
push esi
push eax
call fcn.10065d70
push esi
call fcn.10068498
add esp, 0x14
push edi
lea ecx, [ebx + 0xb4]
call fcn.10043930
push edi
lea ecx, [ebx + 0xc4]
call fcn.10043990
mov edi, dword [ebp + 4]
xor esi, esi
mov dword [ebp + 0x58], esi
cmp dword [ebx + 0xe0], esi
jbe 0x100427ad
mov ebx, dword [ebp + 0xc]
xor edx, edx
mov eax, dword [ebp + 0x54]
mov dword [ebp + 0x50], edx
mov ecx, dword [eax + 0xd8]
add ecx, edx
xor edx, edx
mov dword [ebp + 0x60], edx
mov dword [ebp + 0x48], ecx
cmp dword [ecx + 0xc], edx
jbe 0x10042791
nop word [eax + eax]
mov esi, dword [ecx + 4]
movzx eax, byte [esi + edx*4]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + edx*4 + 1]
xor ecx, eax
movzx eax, byte [esi + edx*4 + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + edx*4 + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebp + 0x18]
and ecx, eax
mov eax, dword [ebx + ecx*8]
add ecx, ecx
mov dword [ebp + 0x5c], ecx
cmp dword [ebx + ecx*4], edi
jne 0x1004274f
mov ecx, edi
jmp 0x10042755
mov ecx, dword [ebx + ecx*4 + 4]
mov ecx, dword [ecx]
cmp eax, ecx
je 0x1004277b
mov ecx, dword [eax + 8]
cmp ecx, dword [esi + edx*4]
je 0x10042768
mov eax, dword [eax]
mov ecx, dword [ebp + 0x5c]
jmp 0x10042746
cmp eax, edi
je 0x1004277b
mov eax, dword [eax + 0xc]
mov dword [esi + edx*4], eax
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 4]
mov edx, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x48]
inc edx
mov dword [ebp + 0x60], edx
cmp edx, dword [ecx + 0xc]
jb 0x10042700
mov eax, dword [ebp + 0x54]
mov esi, dword [ebp + 0x58]
mov edx, dword [ebp + 0x50]
inc esi
add edx, 0x10
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x50], edx
cmp esi, dword [eax + 0xe0]
jb 0x100426e1
mov ebx, dword [ebp + 0x54]
mov esi, dword [ebp - 0x28]
xor edx, edx
cmp dword [ebx + 0xf0], edx
mov eax, dword [ebp + 0x54]
mov ebx, dword [ebp - 0x20]
mov dword [ebp + 0x58], edx
jbe 0x10042863
xor edi, edi
mov dword [ebp + 0x50], edi
nop dword [eax]
mov ecx, dword [eax + 0xe8]
add ecx, edi
xor edi, edi
mov dword [ebp + 0x60], edi
mov dword [ebp + 0x4c], ecx
cmp dword [ecx + 0xc], edi
jbe 0x10042847
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0x2c]
lea eax, [eax + edi*4]
push eax
mov dword [ebp + 0x48], eax
call fcn.1003dee0
mov edx, dword [ebp + 0x48]
mov ecx, dword [ebx + eax*8]
add eax, eax
mov dword [ebp + 0x5c], eax
cmp dword [ebx + eax*4], esi
jne 0x1004280b
mov eax, esi
jmp 0x10042811
mov eax, dword [ebx + eax*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x10042835
mov eax, dword [ecx + 8]
cmp eax, dword [edx]
je 0x10042823
mov ecx, dword [ecx]
mov eax, dword [ebp + 0x5c]
jmp 0x10042802
cmp ecx, esi
je 0x10042835
mov eax, dword [ecx + 0xc]
mov dword [edx], eax
mov ebx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x4c]
inc edi
mov dword [ebp + 0x60], edi
cmp edi, dword [ecx + 0xc]
jb 0x100427e5
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
mov edi, dword [ebp + 0x50]
inc edx
add edi, 0x10
mov dword [ebp + 0x58], edx
mov dword [ebp + 0x50], edi
cmp edx, dword [eax + 0xf0]
jb 0x100427d0
mov edi, dword [ebp + 4]
xor edx, edx
mov dword [ebp + 0x58], edx
cmp dword [eax + 0x100], edx
jbe 0x10042913
xor edi, edi
mov dword [ebp + 0x50], edi
nop dword [eax]
mov ecx, dword [eax + 0xf8]
add ecx, edi
xor edi, edi
mov dword [ebp + 0x60], edi
mov dword [ebp + 0x5c], ecx
cmp dword [ecx + 0xc], edi
jbe 0x100428f7
mov eax, dword [ecx + 4]
lea ecx, [ebp - 0x2c]
lea eax, [eax + edi*4]
push eax
mov dword [ebp + 0x4c], eax
call fcn.1003dee0
mov edx, dword [ebp + 0x4c]
mov ecx, dword [ebx + eax*8]
add eax, eax
mov dword [ebp + 0x48], eax
cmp dword [ebx + eax*4], esi
jne 0x100428bb
mov eax, esi
jmp 0x100428c1
mov eax, dword [ebx + eax*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x100428e5
mov eax, dword [ecx + 8]
cmp eax, dword [edx]
je 0x100428d3
mov ecx, dword [ecx]
mov eax, dword [ebp + 0x48]
jmp 0x100428b2
cmp ecx, esi
je 0x100428e5
mov eax, dword [ecx + 0xc]
mov dword [edx], eax
mov ebx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x28]
mov edi, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x5c]
inc edi
mov dword [ebp + 0x60], edi
cmp edi, dword [ecx + 0xc]
jb 0x10042895
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
mov edi, dword [ebp + 0x50]
inc edx
add edi, 0x10
mov dword [ebp + 0x58], edx
mov dword [ebp + 0x50], edi
cmp edx, dword [eax + 0x100]
jb 0x10042880
mov edi, dword [ebp + 4]
mov ebx, dword [ebp + 0x2c]
xor ecx, ecx
mov esi, dword [ebp + 0x24]
mov dword [ebp + 0x58], ecx
cmp dword [eax + 0x50], ecx
jbe 0x100429c3
mov eax, dword [eax + 0x48]
lea edi, [eax + ecx*8]
push edi
lea ecx, [ebp + 0x20]
call fcn.1003dee0
mov ecx, dword [ebx + eax*8]
lea edx, [eax + eax]
nop dword [eax]
cmp dword [ebx + edx*4], esi
jne 0x10042949
mov eax, esi
jmp 0x1004294f
mov eax, dword [ebx + edx*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x1004296d
mov eax, dword [ecx + 8]
cmp eax, dword [edi]
je 0x1004295e
mov ecx, dword [ecx]
jmp 0x10042940
cmp ecx, esi
je 0x1004296d
mov eax, dword [ecx + 0xc]
mov dword [edi], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
add edi, 4
lea ecx, [ebp + 0x20]
push edi
call fcn.1003dee0
mov ecx, dword [ebx + eax*8]
lea edx, [eax + eax]
nop
cmp dword [ebx + edx*4], esi
jne 0x10042989
mov eax, esi
jmp 0x1004298f
mov eax, dword [ebx + edx*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x100429ad
mov eax, dword [ecx + 8]
cmp eax, dword [edi]
je 0x1004299e
mov ecx, dword [ecx]
jmp 0x10042980
cmp ecx, esi
je 0x100429ad
mov eax, dword [ecx + 0xc]
mov dword [edi], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x58]
mov eax, dword [ebp + 0x54]
inc ecx
mov dword [ebp + 0x58], ecx
cmp ecx, dword [eax + 0x50]
jb 0x10042927
mov edi, dword [ebp + 4]
cmp dword [eax + 0x90], 0
mov dword [ebp + 0x5c], 0
jbe 0x10042b59
xor ecx, ecx
mov dword [ebp + 0x58], ecx
nop dword [eax]
mov eax, dword [eax + 0x88]
add eax, ecx
lea ecx, [ebp + 0x20]
push eax
mov dword [ebp + 0x50], eax
call fcn.1003dee0
mov edx, dword [ebp + 0x50]
mov ecx, dword [ebx + eax*8]
add eax, eax
mov dword [ebp + 0x4c], eax
nop
cmp dword [ebx + eax*4], esi
jne 0x10042a09
mov eax, esi
jmp 0x10042a0f
mov eax, dword [ebx + eax*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x10042a33
mov eax, dword [ecx + 8]
cmp eax, dword [edx]
je 0x10042a21
mov ecx, dword [ecx]
mov eax, dword [ebp + 0x4c]
jmp 0x10042a00
cmp ecx, esi
je 0x10042a33
mov eax, dword [ecx + 0xc]
mov dword [edx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
lea eax, [edx + 4]
push eax
lea ecx, [ebp + 0x20]
mov dword [ebp + 0x4c], eax
call fcn.1003dee0
mov edx, dword [ebp + 0x4c]
mov ecx, dword [ebx + eax*8]
add eax, eax
mov dword [ebp + 0x48], eax
nop dword [eax]
cmp dword [ebx + eax*4], esi
jne 0x10042a59
mov eax, esi
jmp 0x10042a5f
mov eax, dword [ebx + eax*4 + 4]
mov eax, dword [eax]
cmp ecx, eax
je 0x10042a83
mov eax, dword [ecx + 8]
cmp eax, dword [edx]
je 0x10042a71
mov ecx, dword [ecx]
mov eax, dword [ebp + 0x48]
jmp 0x10042a50
cmp ecx, esi
je 0x10042a83
mov eax, dword [ecx + 0xc]
mov dword [edx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
mov eax, dword [ebp + 0x50]
lea ecx, [ebp + 0x20]
add eax, 8
push eax
mov dword [ebp + 0x4c], eax
lea eax, [ebp - 0x30]
push eax
call fcn.1003dc00
mov eax, dword [eax]
cmp eax, esi
je 0x10042ab0
mov ecx, dword [ebp + 0x4c]
mov eax, dword [eax + 0xc]
mov dword [ecx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
mov eax, dword [ebp + 0x54]
lea ecx, [ebp]
mov eax, dword [eax + 0x98]
add eax, dword [ebp + 0x58]
push eax
mov dword [ebp + 0x50], eax
lea eax, [ebp - 0x34]
push eax
call fcn.1003dc00
mov ecx, dword [ebp + 0x50]
mov eax, dword [eax]
cmp eax, edi
je 0x10042ae3
mov eax, dword [eax + 0xc]
mov dword [ecx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
lea eax, [ecx + 4]
push eax
mov dword [ebp + 0x4c], eax
lea ecx, [ebp]
lea eax, [ebp - 0x38]
push eax
call fcn.1003dc00
mov eax, dword [eax]
cmp eax, edi
je 0x10042b0d
mov ecx, dword [ebp + 0x4c]
mov eax, dword [eax + 0xc]
mov dword [ecx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
mov eax, dword [ebp + 0x50]
lea ecx, [ebp]
add eax, 8
push eax
mov dword [ebp + 0x4c], eax
lea eax, [ebp + 0x44]
push eax
call fcn.1003dc00
mov eax, dword [eax]
cmp eax, edi
je 0x10042b3a
mov ecx, dword [ebp + 0x4c]
mov eax, dword [eax + 0xc]
mov dword [ecx], eax
mov ebx, dword [ebp + 0x2c]
mov esi, dword [ebp + 0x24]
mov edi, dword [ebp + 4]
mov edx, dword [ebp + 0x5c]
mov eax, dword [ebp + 0x54]
inc edx
mov ecx, dword [ebp + 0x58]
add ecx, 0xc
mov dword [ebp + 0x5c], edx
mov dword [ebp + 0x58], ecx
cmp edx, dword [eax + 0x90]
jb 0x100429e0
lea ecx, [ebp - 0x2c]
call fcn.100306e0
lea ecx, [ebp]
call fcn.100306e0
lea ecx, [ebp + 0x20]
call fcn.100306e0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x64]
pop ebp
ret
push str.list_T__too_long
call fcn.10064105
int3