Function at 0x1002f8b0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov eax, dword [0x10080800]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x10081e00]
mov edx, dword [0x10081dfc]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
cmp edx, 0xa
jl 0x1002f8e2
test ecx, ecx
je 0x1002f8e2
jmp 0x1002f8e0
mov eax, dword [ebp + 8]
push eax
push eax
mov edi, esp
push eax
mov esi, esp
test eax, eax
je 0x100305a2
mov ecx, dword [ebp + 0xc]
sub ecx, eax
add ecx, 0xfffffffb
mov byte [edi], 0xe8
mov dword [ebp - 0x30], ecx
mov dword [edi + 1], ecx
mov dword [esi], 0
cmp dword [0x10081e14], 0xa
jl 0x1002f932
mov eax, dword [0x10081e18]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
je 0x1002f932
nop word cs:[eax + eax]
jmp 0x1002f930
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x2c], eax
add eax, 5
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x28], edi
nop word cs:[eax + eax]
mov eax, dword [0x10084720]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1002f970
cmp dword [0x10081f78], 0xa
jge 0x1002fb04
jmp 0x1002fb18
mov eax, dword [0x10081e78]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e74], 0xa
setl dl
or dl, al
mov eax, dword [0x10081e44]
mov edi, dword [0x10081e48]
lea esi, [eax + 1]
imul esi, eax
and esi, 1
sete al
cmp edi, 0xa
setl cl
or cl, al
mov eax, dword [0x10081f84]
lea ebx, [eax + 1]
imul ebx, eax
test bl, 1
sete ch
cmp dword [0x10081f88], 0xa
setl dh
mov eax, dword [0x10081e50]
lea ebx, [eax + 1]
imul ebx, eax
or dh, ch
test bl, 1
sete ch
cmp dword [0x10081e4c], 0xa
setl al
or al, ch
mov byte [ebp - 0x18], al
jmp 0x1002f9f6
mov eax, dword fs:[0x30]
test dl, dl
jne 0x1002fa16
mov ebx, esi
test cl, cl
jne 0x1002fa0b
mov eax, dword fs:[0x30]
mov ebx, 1
cmp edi, 0xa
jl 0x1002fa50
test ebx, ebx
jne 0x1002fa5a
jmp 0x1002fa50
test cl, cl
jne 0x1002fa37
mov ebx, dword fs:[0x30]
mov ebx, dword fs:[0x30]
jmp 0x1002fa37
mov ebx, dword fs:[0x30]
mov ebx, dword fs:[0x30]
test cl, cl
je 0x1002fa30
test dl, dl
jne 0x1002fa70
jmp 0x1002f9fa
mov eax, dword fs:[0x30]
test cl, cl
jne 0x1002f9f0
mov eax, dword fs:[0x30]
jmp 0x1002fa50
mov ecx, dword [ebx + 0xc]
mov ecx, dword [ecx + 0xc]
movzx eax, byte [ebp - 0x18]
mov byte [ebp - 0x1c], dh
nop dword [eax]
test dh, dh
je 0x1002fa80
movzx esi, word [ecx + 0x2c]
cmp esi, 2
jb 0x1002fada
mov dword [ebp - 0x14], ecx
mov edi, dword [ecx + 0x30]
shr esi, 1
add esi, esi
mov ebx, 0x826cd300
xor ecx, ecx
nop
movzx edx, byte [edi + ecx]
mov ah, dl
add ah, 0xbf
mov al, dl
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edx
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
add ecx, 2
cmp esi, ecx
jne 0x1002faa0
cmp ebx, 0xf49cc76a
mov dh, byte [ebp - 0x1c]
movzx eax, byte [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
je 0x1002faf0
test al, al
je 0x1002fae4
mov ecx, dword [ecx]
test al, al
jne 0x1002fa80
mov ecx, dword [ecx]
jmp 0x1002fade
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x14], eax
mov dword [0x10084720], eax
cmp dword [0x10081f78], 0xa
jl 0x1002fb18
mov eax, dword [0x10081f74]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff10
cmp dword [0x10081fa8], 0xa
jl 0x1002fb35
mov eax, dword [0x10081fa4]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff20
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1c], eax
mov esi, dword [ecx + eax + 0x20]
add esi, ecx
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
xor eax, eax
jmp 0x1002fb70
mov ecx, 0x836cd493
lea eax, [edx + 1]
cmp ecx, 0xe62203fd
je 0x1002fbc0
mov edx, eax
mov ebx, dword [esi + eax*4]
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + ebx]
test al, al
je 0x1002fb60
add ebx, dword [ebp - 0x18]
mov ecx, 0x836cd493
nop dword [eax + eax]
mov ah, al
add ah, 0xbf
movzx edi, al
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edi
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x1002fb90
jmp 0x1002fb65
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [esi + ecx + 0x1c]
add eax, esi
mov ecx, dword [esi + ecx + 0x24]
add ecx, esi
movzx ecx, word [ecx + edx*2]
add esi, dword [eax + ecx*4]
push dword [ebp - 0x24]
push 0x40
push dword [ebp - 0x20]
push dword [ebp + 8]
call esi
mov esi, dword [0x10081e00]
mov edx, dword [0x10081dfc]
lea ecx, [esi + 1]
imul ecx, esi
and ecx, 1
cmp edx, 0xa
jl 0x1002ff52
test ecx, ecx
je 0x1002ff52
mov eax, dword [ebp - 0x28]
mov byte [eax], 0xe8
mov ecx, dword [ebp - 0x30]
mov dword [eax + 1], ecx
mov eax, dword [ebp - 0x24]
mov dword [eax], 0
cmp dword [0x10081e14], 0xa
jl 0x1002fc3e
mov eax, dword [0x10081e18]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff30
mov eax, dword [0x10084720]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x1002fc60
cmp dword [0x10081f78], 0xa
jge 0x1002fdf4
jmp 0x1002fe08
mov eax, dword [0x10081e78]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e74], 0xa
setl dl
or dl, al
mov eax, dword [0x10081e44]
mov edi, dword [0x10081e48]
lea esi, [eax + 1]
imul esi, eax
and esi, 1
sete al
cmp edi, 0xa
setl cl
or cl, al
mov eax, dword [0x10081f84]
lea ebx, [eax + 1]
imul ebx, eax
test bl, 1
sete ch
cmp dword [0x10081f88], 0xa
setl dh
mov eax, dword [0x10081e50]
lea ebx, [eax + 1]
imul ebx, eax
or dh, ch
test bl, 1
sete ch
cmp dword [0x10081e4c], 0xa
setl al
or al, ch
mov byte [ebp - 0x18], al
jmp 0x1002fce6
mov eax, dword fs:[0x30]
test dl, dl
jne 0x1002fd06
mov ebx, esi
test cl, cl
jne 0x1002fcfb
mov eax, dword fs:[0x30]
mov ebx, 1
cmp edi, 0xa
jl 0x1002fd40
test ebx, ebx
jne 0x1002fd4a
jmp 0x1002fd40
test cl, cl
jne 0x1002fd27
mov ebx, dword fs:[0x30]
mov ebx, dword fs:[0x30]
jmp 0x1002fd27
mov ebx, dword fs:[0x30]
mov ebx, dword fs:[0x30]
test cl, cl
je 0x1002fd20
test dl, dl
jne 0x1002fd60
jmp 0x1002fcea
mov eax, dword fs:[0x30]
test cl, cl
jne 0x1002fce0
mov eax, dword fs:[0x30]
jmp 0x1002fd40
mov ecx, dword [ebx + 0xc]
mov ecx, dword [ecx + 0xc]
movzx eax, byte [ebp - 0x18]
mov byte [ebp - 0x1c], dh
nop dword [eax]
test dh, dh
je 0x1002fd70
movzx esi, word [ecx + 0x2c]
cmp esi, 2
jb 0x1002fdca
mov dword [ebp - 0x14], ecx
mov edi, dword [ecx + 0x30]
shr esi, 1
add esi, esi
mov ebx, 0x826cd300
xor ecx, ecx
nop
movzx edx, byte [edi + ecx]
mov ah, dl
add ah, 0xbf
mov al, dl
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edx
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
add ecx, 2
cmp esi, ecx
jne 0x1002fd90
cmp ebx, 0xf49cc76a
mov dh, byte [ebp - 0x1c]
movzx eax, byte [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
je 0x1002fde0
test al, al
je 0x1002fdd4
mov ecx, dword [ecx]
test al, al
jne 0x1002fd70
mov ecx, dword [ecx]
jmp 0x1002fdce
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x14], eax
mov dword [0x10084720], eax
cmp dword [0x10081f78], 0xa
jl 0x1002fe08
mov eax, dword [0x10081f74]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff40
cmp dword [0x10081fa8], 0xa
jl 0x1002fe25
mov eax, dword [0x10081fa4]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff50
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1c], eax
mov esi, dword [ecx + eax + 0x20]
add esi, ecx
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
xor eax, eax
jmp 0x1002fe60
mov ecx, 0x836cd493
lea eax, [edx + 1]
cmp ecx, 0xe62203fd
je 0x1002feb0
mov edx, eax
mov ebx, dword [esi + eax*4]
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + ebx]
test al, al
je 0x1002fe50
add ebx, dword [ebp - 0x18]
mov ecx, 0x836cd493
nop dword [eax + eax]
mov ah, al
add ah, 0xbf
movzx edi, al
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edi
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x1002fe80
jmp 0x1002fe55
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [edi + ecx + 0x1c]
add eax, edi
mov ecx, dword [edi + ecx + 0x24]
add ecx, edi
movzx ecx, word [ecx + edx*2]
add edi, dword [eax + ecx*4]
mov esi, dword [ebp - 0x24]
push esi
push 0x40
push dword [ebp - 0x20]
push dword [ebp + 8]
call edi
mov eax, dword [ebp - 0x28]
mov byte [eax], 0xe8
mov ecx, dword [ebp - 0x30]
mov dword [eax + 1], ecx
mov dword [esi], 0
cmp dword [0x10081e14], 0xa
jl 0x1002f950
mov eax, dword [0x10081e18]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
je 0x1002f950
jmp 0x1002f930
jmp 0x1002ff10
jmp 0x1002ff20
jmp 0x1002ff30
jmp 0x1002ff40
jmp 0x1002ff50
test eax, eax
mov esi, dword [ebp - 0x28]
je 0x10030592
cmp dword [ebp - 0x20], 0
je 0x1002ffee
movzx eax, byte [esi]
mov ecx, dword [ebp + 8]
mov byte [ecx], al
cmp dword [0x10081dfc], 0xa
jl 0x1002ff92
mov eax, dword [0x10081e00]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
je 0x1002ff92
nop dword [eax + eax]
jmp 0x1002ff90
cmp dword [ebp - 0x20], 1
je 0x1002ffee
movzx eax, byte [esi + 1]
mov ecx, dword [ebp + 8]
mov byte [ecx + 1], al
cmp dword [0x10081dfc], 0xa
jl 0x1002ffbb
mov eax, dword [0x10081e00]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff90
cmp dword [ebp - 0x20], 2
je 0x1002ffee
movzx eax, byte [esi + 2]
mov ecx, dword [ebp + 8]
mov byte [ecx + 2], al
cmp dword [0x10081dfc], 0xa
jl 0x1002ffe4
mov eax, dword [0x10081e00]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff90
cmp dword [ebp - 0x20], 3
jne 0x100305c4
cmp dword [0x10081e34], 0xa
jl 0x1003000b
mov eax, dword [0x10081e38]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x10030540
mov eax, dword [0x10084724]
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x1003019f
mov eax, dword [0x10081e90]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e8c], 0xa
setl dl
or dl, al
mov eax, dword [0x10081e44]
mov ecx, dword [0x10081e48]
lea edi, [eax + 1]
imul edi, eax
and edi, 1
sete al
mov dword [ebp - 0x14], ecx
cmp ecx, 0xa
setl cl
or cl, al
mov eax, dword [0x10081f84]
lea ebx, [eax + 1]
imul ebx, eax
test bl, 1
sete ah
cmp dword [0x10081f88], 0xa
setl dh
mov esi, dword [0x10081e50]
lea ebx, [esi + 1]
imul ebx, esi
or dh, ah
test bl, 1
sete ch
cmp dword [0x10081e4c], 0xa
setl al
or al, ch
mov byte [ebp - 0x18], al
cmp dl, 1
jne 0x100300b1
test cl, cl
jne 0x100300f7
mov esi, dword fs:[0x30]
mov esi, dword fs:[0x30]
jmp 0x100300f7
mov ebx, edi
test cl, cl
jne 0x10030188
mov eax, dword fs:[0x30]
mov ebx, 1
jmp 0x10030188
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [esi + ecx + 0x1c]
add eax, esi
mov ecx, dword [esi + ecx + 0x24]
add ecx, esi
movzx ecx, word [ecx + edx*2]
add esi, dword [eax + ecx*4]
mov eax, dword [ebp - 0x24]
push eax
push dword [eax]
push dword [ebp - 0x20]
push dword [ebp + 8]
call esi
jmp 0x1002ffee
mov esi, dword fs:[0x30]
test cl, cl
jne 0x1003010b
mov esi, dword fs:[0x30]
jmp 0x100300f7
mov ebx, edi
test dl, dl
je 0x10030188
mov ecx, dword [esi + 0xc]
mov ecx, dword [ecx + 0xc]
movzx eax, byte [ebp - 0x18]
mov byte [ebp - 0x1c], dh
nop
test dh, dh
je 0x10030120
movzx esi, word [ecx + 0x2c]
cmp esi, 2
jb 0x1003017a
mov dword [ebp - 0x14], ecx
mov edi, dword [ecx + 0x30]
shr esi, 1
add esi, esi
mov ebx, 0x97dd1196
xor ecx, ecx
nop
movzx edx, byte [edi + ecx]
mov ah, dl
add ah, 0xbf
mov al, dl
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edx
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
add ecx, 2
cmp esi, ecx
jne 0x10030140
cmp ebx, 0x90c6cb18
mov dh, byte [ebp - 0x1c]
movzx eax, byte [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
je 0x10030194
test al, al
je 0x10030184
mov ecx, dword [ecx]
test al, al
jne 0x10030120
mov ecx, dword [ecx]
jmp 0x1003017e
cmp dword [ebp - 0x14], 0xa
jl 0x100301d5
test ebx, ebx
jne 0x100301e3
jmp 0x100301d5
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x14], eax
mov dword [0x10084724], eax
mov eax, dword [0x10081e30]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e2c], 0xa
setl cl
or cl, al
mov edx, dword [0x10081fa4]
mov esi, dword [0x10081fa8]
jne 0x100301f8
lea eax, [edx + 1]
imul eax, edx
and eax, 1
jmp 0x100301eb
mov eax, dword fs:[0x30]
test cl, cl
jne 0x100300f7
mov eax, dword fs:[0x30]
jmp 0x100301d5
cmp esi, 0xa
jl 0x100301f8
test eax, eax
jne 0x10030550
lea eax, [edx + 1]
imul eax, edx
and eax, 1
cmp esi, 0xa
jl 0x1003020e
test eax, eax
jne 0x10030560
test cl, cl
je 0x100301eb
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1c], eax
mov esi, dword [ecx + eax + 0x20]
add esi, ecx
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
xor edx, edx
jmp 0x10030231
inc edx
mov ebx, dword [esi + edx*4]
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + ebx]
test al, al
je 0x10030230
add ebx, dword [ebp - 0x18]
mov ecx, 0x98dd1329
nop word [eax + eax]
mov ah, al
add ah, 0xbf
movzx edi, al
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edi
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x10030250
cmp ecx, 0x397c47
jne 0x10030230
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [esi + ecx + 0x1c]
add eax, esi
mov ecx, dword [esi + ecx + 0x24]
add ecx, esi
movzx ecx, word [ecx + edx*2]
add esi, dword [eax + ecx*4]
mov eax, dword [ebp - 0x24]
push eax
push dword [eax]
push dword [ebp - 0x20]
push dword [ebp + 8]
call esi
mov eax, dword [0x10081e00]
mov edx, dword [0x10081dfc]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
cmp edx, 0xa
jl 0x10030592
test ecx, ecx
je 0x10030592
cmp dword [0x10081e34], 0xa
jl 0x100302e7
mov eax, dword [0x10081e38]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x10030590
mov eax, dword [0x10084724]
mov dword [ebp - 0x14], eax
test eax, eax
jne 0x1003044f
mov eax, dword [0x10081e90]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e8c], 0xa
setl dl
or dl, al
mov eax, dword [0x10081e44]
mov ecx, dword [0x10081e48]
lea edi, [eax + 1]
imul edi, eax
and edi, 1
sete al
mov dword [ebp - 0x14], ecx
cmp ecx, 0xa
setl cl
or cl, al
mov eax, dword [0x10081f84]
lea ebx, [eax + 1]
imul ebx, eax
test bl, 1
sete ah
cmp dword [0x10081f88], 0xa
setl dh
mov esi, dword [0x10081e50]
lea ebx, [esi + 1]
imul ebx, esi
or dh, ah
test bl, 1
sete ch
cmp dword [0x10081e4c], 0xa
setl al
or al, ch
mov byte [ebp - 0x18], al
cmp dl, 1
jne 0x1003038d
test cl, cl
jne 0x100303a7
mov esi, dword fs:[0x30]
mov esi, dword fs:[0x30]
jmp 0x100303a7
mov ebx, edi
test cl, cl
jne 0x10030438
mov eax, dword fs:[0x30]
mov ebx, 1
jmp 0x10030438
mov esi, dword fs:[0x30]
test cl, cl
jne 0x100303bb
mov esi, dword fs:[0x30]
jmp 0x100303a7
mov ebx, edi
test dl, dl
je 0x10030438
mov ecx, dword [esi + 0xc]
mov ecx, dword [ecx + 0xc]
movzx eax, byte [ebp - 0x18]
mov byte [ebp - 0x1c], dh
nop
test dh, dh
je 0x100303d0
movzx esi, word [ecx + 0x2c]
cmp esi, 2
jb 0x1003042a
mov dword [ebp - 0x14], ecx
mov edi, dword [ecx + 0x30]
shr esi, 1
add esi, esi
mov ebx, 0x97dd1196
xor ecx, ecx
nop
movzx edx, byte [edi + ecx]
mov ah, dl
add ah, 0xbf
mov al, dl
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edx
movsx eax, al
xor eax, ebx
imul ebx, eax, 0x1000193
add ecx, 2
cmp esi, ecx
jne 0x100303f0
cmp ebx, 0x90c6cb18
mov dh, byte [ebp - 0x1c]
movzx eax, byte [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
je 0x10030444
test al, al
je 0x10030434
mov ecx, dword [ecx]
test al, al
jne 0x100303d0
mov ecx, dword [ecx]
jmp 0x1003042e
cmp dword [ebp - 0x14], 0xa
jl 0x10030485
test ebx, ebx
jne 0x10030493
jmp 0x10030485
mov eax, dword [ecx + 0x18]
mov dword [ebp - 0x14], eax
mov dword [0x10084724], eax
mov eax, dword [0x10081e30]
lea ecx, [eax + 1]
imul ecx, eax
test cl, 1
sete al
cmp dword [0x10081e2c], 0xa
setl cl
or cl, al
mov edx, dword [0x10081fa4]
mov esi, dword [0x10081fa8]
jne 0x100304a8
lea eax, [edx + 1]
imul eax, edx
and eax, 1
jmp 0x1003049b
mov eax, dword fs:[0x30]
test cl, cl
jne 0x100303a7
mov eax, dword fs:[0x30]
jmp 0x10030485
cmp esi, 0xa
jl 0x100304a8
test eax, eax
jne 0x10030570
lea eax, [edx + 1]
imul eax, edx
and eax, 1
cmp esi, 0xa
jl 0x100304be
test eax, eax
jne 0x10030580
test cl, cl
je 0x1003049b
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov eax, dword [ecx + eax + 0x78]
mov dword [ebp - 0x1c], eax
mov esi, dword [ecx + eax + 0x20]
add esi, ecx
lea eax, [ecx + 1]
mov dword [ebp - 0x18], eax
xor edx, edx
jmp 0x100304e1
inc edx
mov ebx, dword [esi + edx*4]
mov eax, dword [ebp - 0x14]
movzx eax, byte [eax + ebx]
test al, al
je 0x100304e0
add ebx, dword [ebp - 0x18]
mov ecx, 0x98dd1329
nop word [eax + eax]
mov ah, al
add ah, 0xbf
movzx edi, al
or al, 0x20
cmp ah, 0x1a
movzx eax, al
cmovae eax, edi
movsx eax, al
xor eax, ecx
imul ecx, eax, 0x1000193
movzx eax, byte [ebx]
inc ebx
test al, al
jne 0x10030500
cmp ecx, 0x397c47
jne 0x100304e0
jmp 0x100300cb
jmp 0x10030540
jmp 0x10030550
jmp 0x10030560
jmp 0x10030570
jmp 0x10030580
jmp 0x10030590
cmp edx, 0xa
jl 0x100305a2
test ecx, ecx
je 0x100305a2
nop dword [eax + eax]
jmp 0x100305a0
cmp edx, 0xa
jl 0x100305b2
test ecx, ecx
je 0x100305b2
nop dword [eax + eax]
jmp 0x100305b0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10035778
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movzx eax, byte [esi + 3]
mov ecx, dword [ebp + 8]
mov byte [ecx + 3], al
cmp dword [0x10081dfc], 0xa
jl 0x100305eb
mov eax, dword [0x10081e00]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff90
cmp dword [ebp - 0x20], 4
je 0x1002ffee
movzx eax, byte [esi + 4]
mov ecx, dword [ebp + 8]
mov byte [ecx + 4], al
cmp dword [0x10081dfc], 0xa
jl 0x1003061c
mov eax, dword [0x10081e00]
lea ecx, [eax + 1]
imul ecx, eax
and ecx, 1
jne 0x1002ff90
cmp dword [ebp + 0x10], 0
je 0x1002ffee
neg dword [ebp - 0x2c]
mov eax, 5
jmp 0x10030640
mov ecx, dword [ebp - 0x2c]
add ecx, eax
inc ecx
inc eax
cmp ecx, 5
je 0x1002ffee
mov cl, 0x90
cmp eax, 4
ja 0x1003064b
movzx ecx, byte [esi + eax]
mov edx, dword [ebp + 8]
mov byte [edx + eax], cl
cmp dword [0x10081dfc], 0xa
jl 0x10030630
mov ecx, dword [0x10081e00]
lea edx, [ecx + 1]
imul edx, ecx
and edx, 1
je 0x10030630
jmp 0x1002ff90