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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1022df85
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x102d2084]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x30], ecx
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov ecx, dword [eax + 0x138]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x10145012
mov eax, dword [eax + 0x140]
mov eax, dword [eax + 0x30]
mov ecx, eax
and eax, 0xffffff01
shr ecx, 0xb
and ecx, 0xffffff01
mov dword [ebp - 0x20], eax
mov eax, dword [0x1036f6d0]
mov dword [ebp - 0x38], ecx
test al, 1
jne 0x10144533
or eax, 1
mov dword [0x1036f6d0], eax
mov dword [ebp - 4], 0
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144468
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1014445d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10144437
xor edx, edx
test ecx, ecx
je 0x1014445d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144444
cmp edi, 0xcd2ed041
je 0x1014447f
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144424
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov dword [0x10370fb4], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1014453c
mov eax, dword [ebp - 0x14]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], esi
cmp dword [eax + 4], esi
jle 0x10144514
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x101444c9
cmp dword [ecx + 4], 0
jle 0x101444c9
push 0
mov edx, 0xa2ccb41a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101444c6
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 0x101444d2
xor edx, edx
test ecx, ecx
je 0x101444fc
nop
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101444e0
cmp edi, 0xa2ccb41a
je 0x10144528
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x10144498
mov ecx, esi
mov dword [ebp - 0x1c], esi
mov dword [0x10370fb4], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1014453c
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x1014446a
mov ecx, dword [0x10370fb4]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x28]
movzx eax, word [ecx + eax]
mov dword [ebp - 0x34], eax
cmp ax, 0x31
je 0x10145012
cmp ax, 4
je 0x10144560
cmp ax, 0xa
jne 0x10144847
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x103aabcc]
test al, 1
jne 0x101446be
or eax, 1
mov dword [0x103aabcc], eax
mov dword [ebp - 4], 1
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x101445e6
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x101445db
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101445b5
xor edx, edx
test ecx, ecx
je 0x101445db
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101445c2
cmp edi, 0xea7e6f79
je 0x101445fc
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x101445a2
mov ecx, dword [ebp - 0x1c]
xor eax, eax
mov dword [0x103aab9c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101446c3
mov eax, dword [ebp - 0x18]
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x24], ebx
cmp dword [eax + 4], ebx
jle 0x10144694
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov edi, dword [eax]
add edi, ecx
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x10144646
cmp dword [ecx + 4], 0
jle 0x10144646
push 0
mov edx, 0xf53841a5
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10144643
mov ecx, dword [edi + 0x2c]
add ecx, eax
add ebx, ecx
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x18]
mov esi, dword [edi]
mov ebx, 0x811c9dc5
xor ecx, ecx
nop
inc ecx
cmp byte [ecx + esi], 0
jne 0x10144650
xor edx, edx
test ecx, ecx
je 0x1014467c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, ebx
imul ebx, eax, 0x1000193
cmp edx, ecx
jb 0x10144660
cmp ebx, 0xf53841a5
je 0x101446a7
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
inc edx
mov ebx, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10144615
mov ecx, dword [ebp - 0x1c]
mov eax, ebx
mov dword [0x103aab9c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101446c3
mov eax, dword [edi + 0x2c]
add eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov dword [0x103aab9c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101446c3
mov eax, dword [0x103aab9c]
mov edx, dword [ebp - 0x2c]
cmp dword [edx + eax], 0
jle 0x10144847
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov dword [ebp - 0x2c], eax
mov ecx, dword [eax + 0x138]
mov eax, dword [0x103aabd0]
mov dword [ebp - 0x20], ecx
test al, 1
jne 0x1014481e
or eax, 1
mov dword [0x103aabd0], eax
mov dword [ebp - 4], 2
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144759
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1014474e
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10144728
xor edx, edx
test ecx, ecx
je 0x1014474e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144735
cmp edi, 0x3b072f95
je 0x10144765
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144715
xor eax, eax
mov dword [0x103aabd4], eax
jmp 0x10144823
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144808
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x101447b1
cmp dword [ecx + 4], 0
jle 0x101447b1
push 0
mov edx, 0xaef41dfa
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101447ae
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 0x101447c0
xor edx, edx
test ecx, ecx
je 0x101447ec
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101447d0
cmp edi, 0xaef41dfa
je 0x10144811
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 0x10144780
mov eax, esi
mov dword [0x103aabd4], eax
jmp 0x10144823
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103aabd4], eax
jmp 0x10144823
mov eax, dword [0x103aabd4]
mov ecx, dword [ebp - 0x2c]
movss xmm0, dword [ecx + 0x40]
mov ecx, dword [ebp - 0x20]
comiss xmm0, dword [ecx + eax]
setae al
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 [0x10bbb620]
mov edx, dword [0x1036f6d0]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x101448ea
or edx, 1
mov dword [0x1036f6d0], edx
mov dword [ebp - 4], 3
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x101448d8
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x101448cd
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x101448a3
xor edx, edx
test ecx, ecx
je 0x101448cd
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101448b0
cmp edi, 0xcd2ed041
je 0x1014499b
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144890
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov dword [0x10370fb4], ecx
mov dword [ebp - 4], 0xffffffff
movzx eax, word [eax + ecx]
add eax, 0xffffffd5
cmp ax, 5
ja 0x10144e0a
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x103aa9d4]
test al, 1
jne 0x10144b0c
or eax, 1
mov dword [0x103aa9d4], eax
mov dword [ebp - 4], 4
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144988
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1014497d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10144953
xor edx, edx
test ecx, ecx
je 0x1014497d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144960
cmp edi, 0x7384d671
je 0x10144a46
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144940
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103aa9c4], eax
jmp 0x10144b11
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144a34
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x101449e5
cmp dword [ecx + 4], 0
jle 0x101449e5
push 0
mov edx, 0xa2ccb41a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x101449e2
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
inc ecx
cmp byte [ecx + esi], 0
jne 0x101449f0
xor edx, edx
test ecx, ecx
je 0x10144a1c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144a00
cmp edi, 0xa2ccb41a
je 0x10144a3b
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 0x101449b4
mov ecx, esi
jmp 0x101448da
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x101448da
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144ae8
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10144a91
cmp dword [ecx + 4], 0
jle 0x10144a91
push 0
mov edx, 0xb3d8aaba
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10144a8e
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 0x10144aa0
xor edx, edx
test ecx, ecx
je 0x10144acc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144ab0
cmp edi, 0xb3d8aaba
je 0x10144af8
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 0x10144a60
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103aa9c4], eax
jmp 0x10144b11
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103aa9c4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10144b11
mov eax, dword [0x103aa9c4]
mov ecx, dword [ebp - 0x2c]
mov al, byte [ecx + eax]
test al, al
jne 0x10145012
mov eax, dword [0x10bbb620]
mov edx, dword [0x103aa9c0]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x10144c7a
or edx, 1
mov dword [0x103aa9c0], edx
mov dword [ebp - 4], 5
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144ba8
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10144b9d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10144b77
xor edx, edx
test ecx, ecx
je 0x10144b9d
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144b84
cmp edi, 0x7384d671
je 0x10144bc5
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144b64
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103aa9c0]
mov dword [0x103aa9d0], ecx
jmp 0x10144c80
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144c68
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10144c11
cmp dword [ecx + 4], 0
jle 0x10144c11
push 0
mov edx, 0x57c1b8da
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10144c0e
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 [esi + ecx], 0
jne 0x10144c20
xor edx, edx
test ecx, ecx
je 0x10144c4c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144c30
cmp edi, 0x57c1b8da
je 0x10144c6f
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 0x10144be0
mov ecx, esi
jmp 0x10144baa
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10144baa
mov ecx, dword [0x103aa9d0]
movss xmm0, dword [eax + ecx]
comiss xmm0, dword [0x102ba5ec]
jbe 0x10145012
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x10144d1c
or edx, 1
mov dword [0x103aa9c0], edx
mov dword [ebp - 4], 6
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144d14
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10144d09
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10144ce3
xor edx, edx
test ecx, ecx
je 0x10144d09
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144cf0
cmp edi, 0x7384d671
je 0x10144d51
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144cd0
xor ecx, ecx
mov dword [0x103aa9d0], ecx
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
movss xmm0, dword [eax + 0x40]
mov eax, dword [ebp - 0x2c]
comiss xmm0, dword [eax + ecx]
jbe 0x10145012
mov al, 1
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 - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144df8
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop word [eax + eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10144da1
cmp dword [ecx + 4], 0
jle 0x10144da1
push 0
mov edx, 0x57c1b8da
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10144d9e
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 0x10144db0
xor edx, edx
test ecx, ecx
je 0x10144ddc
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144dc0
cmp edi, 0x57c1b8da
je 0x10144dff
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 0x10144d70
mov ecx, esi
jmp 0x10144d16
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10144d16
mov ecx, dword [ebp - 0x30]
push 0
call fcn.10143530
cmp word [ebp - 0x34], 0x40
mov bl, al
mov byte [ebp - 0xd], bl
jne 0x10144e46
cmp byte [ebp - 0x20], 0
je 0x10145012
test bl, bl
je 0x10145012
mov al, 1
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 [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov eax, dword [eax + 0x138]
mov dword [ebp - 0x34], eax
mov eax, dword [0x1036f6d0]
test al, 1
jne 0x10144fb2
or eax, 1
mov dword [0x1036f6d0], eax
mov dword [ebp - 4], 7
mov ebx, dword [0x1036cbb0]
cmp ebx, dword [0x1036cbb4]
je 0x10144ed4
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10144ec9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10144ea0
xor edx, edx
test ecx, ecx
je 0x10144ec9
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144eb0
cmp edi, 0xcd2ed041
je 0x10144eea
add ebx, 4
cmp ebx, dword [0x1036cbb4]
jne 0x10144e88
mov bl, byte [ebp - 0xd]
xor eax, eax
mov dword [0x10370fb4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10144fb7
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10144f88
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10144f34
cmp dword [ecx + 4], 0
jle 0x10144f34
push 0
mov edx, 0xa2ccb41a
call fcn.10138e60
add esp, 4
test eax, eax
je 0x10144f31
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 [esi + ecx], 0
jne 0x10144f40
xor edx, edx
test ecx, ecx
je 0x10144f6c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10144f50
cmp edi, 0xa2ccb41a
je 0x10144f9b
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 0x10144f03
mov bl, byte [ebp - 0xd]
mov eax, esi
mov dword [0x10370fb4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10144fb7
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov bl, byte [ebp - 0xd]
mov dword [0x10370fb4], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10144fb7
mov eax, dword [0x10370fb4]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10bbb620]
add eax, 0x91761abb
xor eax, 0xfd410b50
mov ecx, dword [eax + 0xf4]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x10145004
cmp dword [eax + 0xc8], 0
jne 0x10145004
cmp si, 0x1f
je 0x10145004
cmp byte [ebp - 0x20], 0
jne 0x10144e2a
cmp byte [ebp - 0x38], 0
jmp 0x10144e24
cmp byte [ebp - 0x20], 0
je 0x10145012
test bl, bl
jne 0x10144d3d
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret