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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101d9325
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x1026b040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x30], ecx
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov ecx, dword [eax + 0x150]
mov dword [ebp - 0x28], ecx
test ecx, ecx
je 0x10121222
mov eax, dword [eax + 0x158]
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 [0x10304ca8]
mov dword [ebp - 0x38], ecx
test al, 1
jne 0x10120743
or eax, 1
mov dword [0x10304ca8], eax
mov dword [ebp - 4], 0
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120678
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1012066d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10120647
xor edx, edx
test ecx, ecx
je 0x1012066d
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120654
cmp edi, 0xcd2ed041
je 0x1012068f
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120634
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
mov dword [0x1030654c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1012074c
mov eax, dword [ebp - 0x14]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], esi
cmp dword [eax + 4], esi
jle 0x10120724
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x101206d9
cmp dword [ecx + 4], 0
jle 0x101206d9
push 0
mov edx, 0xa2ccb41a
call fcn.10115470
add esp, 4
test eax, eax
je 0x101206d6
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 [esi + ecx], 0
jne 0x101206e2
xor edx, edx
test ecx, ecx
je 0x1012070c
nop
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101206f0
cmp edi, 0xa2ccb41a
je 0x10120738
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 0x101206a8
mov ecx, esi
mov dword [ebp - 0x1c], esi
mov dword [0x1030654c], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1012074c
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x1012067a
mov ecx, dword [0x1030654c]
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x28]
movzx eax, word [ecx + eax]
mov dword [ebp - 0x34], eax
cmp ax, 0x31
je 0x10121222
cmp ax, 4
je 0x10120770
cmp ax, 0xa
jne 0x10120a57
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x1030a494]
test al, 1
jne 0x101208ce
or eax, 1
mov dword [0x1030a494], eax
mov dword [ebp - 4], 1
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x101207f6
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x101207eb
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x101207c5
xor edx, edx
test ecx, ecx
je 0x101207eb
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101207d2
cmp edi, 0xea7e6f79
je 0x1012080c
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x101207b2
mov ecx, dword [ebp - 0x1c]
xor eax, eax
mov dword [0x1030a468], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101208d3
mov eax, dword [ebp - 0x18]
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x24], ebx
cmp dword [eax + 4], ebx
jle 0x101208a4
xor ecx, ecx
mov dword [ebp - 0x28], ecx
mov edi, dword [eax]
add edi, ecx
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x10120856
cmp dword [ecx + 4], 0
jle 0x10120856
push 0
mov edx, 0xf53841a5
call fcn.10115470
add esp, 4
test eax, eax
je 0x10120853
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 [esi + ecx], 0
jne 0x10120860
xor edx, edx
test ecx, ecx
je 0x1012088c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, ebx
imul ebx, eax, 0x1000193
cmp edx, ecx
jb 0x10120870
cmp ebx, 0xf53841a5
je 0x101208b7
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 0x10120825
mov ecx, dword [ebp - 0x1c]
mov eax, ebx
mov dword [0x1030a468], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101208d3
mov eax, dword [edi + 0x2c]
add eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov dword [0x1030a468], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101208d3
mov eax, dword [0x1030a468]
mov edx, dword [ebp - 0x2c]
cmp dword [edx + eax], 0
jle 0x10120a57
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov dword [ebp - 0x2c], eax
mov ecx, dword [eax + 0x150]
mov eax, dword [0x1030a49c]
mov dword [ebp - 0x20], ecx
test al, 1
jne 0x10120a2e
or eax, 1
mov dword [0x1030a49c], eax
mov dword [ebp - 4], 2
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120969
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x1012095e
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10120938
xor edx, edx
test ecx, ecx
je 0x1012095e
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120945
cmp edi, 0x3b072f95
je 0x10120975
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120925
xor eax, eax
mov dword [0x1030a4a0], eax
jmp 0x10120a33
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10120a18
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 0x101209c1
cmp dword [ecx + 4], 0
jle 0x101209c1
push 0
mov edx, 0xaef41dfa
call fcn.10115470
add esp, 4
test eax, eax
je 0x101209be
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 0x101209d0
xor edx, edx
test ecx, ecx
je 0x101209fc
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101209e0
cmp edi, 0xaef41dfa
je 0x10120a21
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 0x10120990
mov eax, esi
mov dword [0x1030a4a0], eax
jmp 0x10120a33
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x1030a4a0], eax
jmp 0x10120a33
mov eax, dword [0x1030a4a0]
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 [0x10633ee0]
mov edx, dword [0x10304ca8]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x10120afa
or edx, 1
mov dword [0x10304ca8], edx
mov dword [ebp - 4], 3
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120ae8
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10120add
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10120ab3
xor edx, edx
test ecx, ecx
je 0x10120add
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120ac0
cmp edi, 0xcd2ed041
je 0x10120bab
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120aa0
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov dword [0x1030654c], ecx
mov dword [ebp - 4], 0xffffffff
movzx eax, word [eax + ecx]
add eax, 0xffffffd5
cmp ax, 5
ja 0x1012101a
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x10309a08]
test al, 1
jne 0x10120d1c
or eax, 1
mov dword [0x10309a08], eax
mov dword [ebp - 4], 4
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120b98
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10120b8d
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10120b63
xor edx, edx
test ecx, ecx
je 0x10120b8d
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120b70
cmp edi, 0x7384d671
je 0x10120c56
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120b50
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x103099fc], eax
jmp 0x10120d21
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10120c44
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10120bf5
cmp dword [ecx + 4], 0
jle 0x10120bf5
push 0
mov edx, 0xa2ccb41a
call fcn.10115470
add esp, 4
test eax, eax
je 0x10120bf2
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 [esi + ecx], 0
jne 0x10120c00
xor edx, edx
test ecx, ecx
je 0x10120c2c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120c10
cmp edi, 0xa2ccb41a
je 0x10120c4b
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 0x10120bc4
mov ecx, esi
jmp 0x10120aea
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10120aea
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10120cf8
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 0x10120ca1
cmp dword [ecx + 4], 0
jle 0x10120ca1
push 0
mov edx, 0xb3d8aaba
call fcn.10115470
add esp, 4
test eax, eax
je 0x10120c9e
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 0x10120cb0
xor edx, edx
test ecx, ecx
je 0x10120cdc
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120cc0
cmp edi, 0xb3d8aaba
je 0x10120d08
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 0x10120c70
mov eax, esi
mov dword [ebp - 4], 0xffffffff
mov dword [0x103099fc], eax
jmp 0x10120d21
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov dword [0x103099fc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x10120d21
mov eax, dword [0x103099fc]
mov ecx, dword [ebp - 0x2c]
cmp byte [ecx + eax], 0
jne 0x10121222
mov eax, dword [0x10633ee0]
mov edx, dword [0x103099f8]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x10120e8a
or edx, 1
mov dword [0x103099f8], edx
mov dword [ebp - 4], 5
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120db7
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10120dac
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10120d86
xor edx, edx
test ecx, ecx
je 0x10120dac
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120d93
cmp edi, 0x7384d671
je 0x10120dd4
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120d73
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x103099f8]
mov dword [0x10309a04], ecx
jmp 0x10120e90
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10120e78
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 0x10120e21
cmp dword [ecx + 4], 0
jle 0x10120e21
push 0
mov edx, 0x57c1b8da
call fcn.10115470
add esp, 4
test eax, eax
je 0x10120e1e
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 0x10120e30
xor edx, edx
test ecx, ecx
je 0x10120e5c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120e40
cmp edi, 0x57c1b8da
je 0x10120e7f
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 0x10120df0
mov ecx, esi
jmp 0x10120db9
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10120db9
mov ecx, dword [0x10309a04]
movss xmm0, dword [eax + ecx]
comiss xmm0, dword [0x10257eb8]
jbe 0x10121222
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x2c], eax
test dl, 1
jne 0x10120f2c
or edx, 1
mov dword [0x103099f8], edx
mov dword [ebp - 4], 6
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x10120f24
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x10120f19
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10120ef3
xor edx, edx
test ecx, ecx
je 0x10120f19
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120f00
cmp edi, 0x7384d671
je 0x10120f61
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10120ee0
xor ecx, ecx
mov dword [0x10309a04], ecx
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
movss xmm0, dword [eax + 0x40]
mov eax, dword [ebp - 0x2c]
comiss xmm0, dword [eax + ecx]
jbe 0x10121222
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 0x10121008
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 0x10120fb1
cmp dword [ecx + 4], 0
jle 0x10120fb1
push 0
mov edx, 0x57c1b8da
call fcn.10115470
add esp, 4
test eax, eax
je 0x10120fae
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 0x10120fc0
xor edx, edx
test ecx, ecx
je 0x10120fec
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10120fd0
cmp edi, 0x57c1b8da
je 0x1012100f
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 0x10120f80
mov ecx, esi
jmp 0x10120f26
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x18]
jmp 0x10120f26
mov ecx, dword [ebp - 0x30]
push 0
call fcn.1011f740
cmp word [ebp - 0x34], 0x40
mov bl, al
mov byte [ebp - 0xd], bl
jne 0x10121056
cmp byte [ebp - 0x20], 0
je 0x10121222
test bl, bl
je 0x10121222
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 [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov eax, dword [eax + 0x150]
mov dword [ebp - 0x34], eax
mov eax, dword [0x10304ca8]
test al, 1
jne 0x101211c2
or eax, 1
mov dword [0x10304ca8], eax
mov dword [ebp - 4], 7
mov ebx, dword [0x103030f8]
cmp ebx, dword [0x103030fc]
je 0x101210e4
mov eax, dword [ebx]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x101210d9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x101210b0
xor edx, edx
test ecx, ecx
je 0x101210d9
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x101210c0
cmp edi, 0xcd2ed041
je 0x101210fa
add ebx, 4
cmp ebx, dword [0x103030fc]
jne 0x10121098
mov bl, byte [ebp - 0xd]
xor eax, eax
mov dword [0x1030654c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101211c7
mov eax, dword [ebp - 0x1c]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x28], esi
cmp dword [eax + 4], esi
jle 0x10121198
xor ecx, ecx
mov dword [ebp - 0x24], ecx
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10121144
cmp dword [ecx + 4], 0
jle 0x10121144
push 0
mov edx, 0xa2ccb41a
call fcn.10115470
add esp, 4
test eax, eax
je 0x10121141
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 0x10121150
xor edx, edx
test ecx, ecx
je 0x1012117c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10121160
cmp edi, 0xa2ccb41a
je 0x101211ab
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 0x10121113
mov bl, byte [ebp - 0xd]
mov eax, esi
mov dword [0x1030654c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101211c7
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov bl, byte [ebp - 0xd]
mov dword [0x1030654c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x101211c7
mov eax, dword [0x1030654c]
mov ecx, dword [ebp - 0x34]
movzx esi, word [ecx + eax]
mov eax, dword [0x10633ee0]
add eax, 0xfab78433
xor eax, 0xc85d879a
mov ecx, dword [eax + 0x10c]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x10121214
cmp dword [eax + 0xc8], 0
jne 0x10121214
cmp si, 0x1f
je 0x10121214
cmp byte [ebp - 0x20], 0
jne 0x1012103a
cmp byte [ebp - 0x38], 0
jmp 0x10121034
cmp byte [ebp - 0x20], 0
je 0x10121222
test bl, bl
jne 0x10120f4d
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