Function at 0x100fe980
Capabilities:
Encode data using base64
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x224
mov eax, dword [esp + 0x234]
push ebp
mov ebp, dword [esp + 0x23c]
push esi
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov esi, dword [esp + 0x230]
mov dword [esp + 0x88], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x84], edx
mov edx, dword [eax + 0xc]
mov dword [esp + 0x7c], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x80], edx
mov edx, dword [eax + 0x14]
mov eax, dword [ebp]
push edi
mov dword [esp + 0x7c], ecx
push 0x7f
push esi
mov ecx, ebp
mov dword [esp + 0x98], edx
call dword [eax + 0x38]
mov ecx, dword [esp + 0x23c]
mov byte [esp + 0x168], 0
push ecx
mov byte [esp + 0xa4], 0
call fcn.101026c0
mov edi, eax
push edi
mov dword [esp + 0x14], edi
call fcn.10102fd0
add esp, 8
test al, al
je 0x100fea49
test esi, esi
jbe 0x100fea43
lea edi, [esi - 1]
mov edx, dword [ebp]
push edi
mov ecx, ebp
call dword [edx + 0x10]
movsx eax, al
push eax
call fcn.10102fd0
add esp, 4
test al, al
je 0x100fea43
mov ecx, dword [esp + 0x238]
dec esi
dec edi
inc ecx
test esi, esi
mov dword [esp + 0x238], ecx
ja 0x100fea15
xor edi, edi
mov dword [esp + 0xc], edi
test esi, esi
jbe 0x100fea83
push edi
call fcn.101030a0
add esp, 4
test al, al
je 0x100fea7f
cmp edi, 0x78
je 0x100fea7f
mov edx, dword [esp + 0x238]
dec esi
inc edx
push esi
mov dword [esp + 0x23c], edx
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x10]
test esi, esi
movsx edi, al
ja 0x100fea4d
mov dword [esp + 0xc], edi
mov eax, dword [ebp]
push 0x7f
push esi
mov ecx, ebp
call dword [eax + 0x38]
mov edx, dword [ebp]
push esi
mov ecx, ebp
call dword [edx + 0x14]
test eax, eax
mov dword [esp + 0x5c], eax
jle 0x100feaaa
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx + 0x28]
jmp 0x100feabe
mov eax, dword [ebp]
push 1
push str.asp.default.language
mov ecx, ebp
call dword [eax + 0x30]
or al, 0x10
shl eax, 4
mov ecx, eax
push ebx
and ecx, 3
push edi
mov dword [esp + 0x30], ecx
mov ecx, eax
sar ecx, 2
and cl, 1
mov byte [esp + 0x47], 0
mov byte [esp + 0x37], cl
mov ecx, eax
sar ecx, 3
and cl, 1
mov byte [esp + 0x2b], cl
mov ecx, eax
sar ecx, 4
and ecx, 0xf
mov dword [esp + 0x6c], ecx
mov ecx, eax
sar ecx, 8
sar eax, 0xc
and ecx, 0xf
and eax, 0xff
mov dword [esp + 0x74], ecx
mov dword [esp + 0x68], eax
call fcn.101025f0
mov edx, dword [ebp]
add esp, 4
mov ecx, ebp
mov dword [esp + 0x34], eax
push 0
push str.fold.html
call dword [edx + 0x30]
test eax, eax
setne bl
test bl, bl
je 0x100feb46
mov eax, dword [ebp]
push 0
push 0x10346874
mov ecx, ebp
call dword [eax + 0x30]
test eax, eax
mov byte [esp + 0x42], 1
jne 0x100feb4b
mov byte [esp + 0x42], 0
test bl, bl
je 0x100feb67
mov edx, dword [ebp]
push 1
push str.fold.html.preprocessor
mov ecx, ebp
call dword [edx + 0x30]
test eax, eax
mov byte [esp + 0x41], 1
jne 0x100feb6c
mov byte [esp + 0x41], 0
mov eax, dword [ebp]
push 1
push 0x1034684c
mov ecx, ebp
call dword [eax + 0x30]
mov edx, dword [ebp]
push 0
test eax, eax
push str.html.tags.case.sensitive
mov ecx, ebp
setne byte [esp + 0x67]
call dword [edx + 0x30]
mov edx, dword [ebp]
mov ecx, ebp
test eax, eax
setne al
mov byte [esp + 0x98], al
mov eax, dword [esp + 0x60]
push eax
call dword [edx + 0x1c]
mov edx, dword [ebp]
and eax, 0xfff
mov bl, 0x20
push esi
mov ecx, ebp
mov dword [esp + 0x7c], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x50], 0
mov byte [esp + 0x1b], 0x20
mov byte [esp + 0x80], bl
call dword [edx + 0x44]
mov eax, dword [esp + 0x23c]
mov dword [esp + 0x74], esi
add eax, esi
cmp esi, eax
mov dword [esp + 0x6c], eax
jge 0x1010201c
mov cl, byte [esp + 0x17]
cmp bl, 0x20
mov byte [esp + 0x4b], cl
mov byte [esp + 0x17], bl
je 0x100fec09
cmp bl, 9
je 0x100fec09
mov byte [esp + 0x7c], bl
cmp esi, dword [ebp + 0xfa8]
jl 0x100fec19
cmp esi, dword [ebp + 0xfac]
jl 0x100fec22
mov edx, dword [ebp]
push esi
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
mov ecx, esi
sub ecx, eax
mov bl, byte [ecx + ebp + 4]
lea ecx, [esi + 1]
cmp ecx, eax
mov byte [esp + 0x58], bl
mov dword [esp + 0x38], ecx
jl 0x100fec47
cmp ecx, dword [ebp + 0xfac]
jl 0x100fec6a
mov eax, dword [esp + 0x38]
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jl 0x100fec7a
cmp ecx, dword [ebp + 0xfac]
jge 0x100fec7a
mov edx, dword [esp + 0x38]
sub edx, eax
mov cl, byte [edx + ebp + 4]
mov byte [esp + 0x20], cl
jmp 0x100fec7f
mov byte [esp + 0x20], 0x20
lea ecx, [esi + 2]
cmp ecx, eax
mov dword [esp + 0x44], ecx
jl 0x100fec92
cmp ecx, dword [ebp + 0xfac]
jl 0x100fecb5
mov eax, dword [esp + 0x44]
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
mov ecx, dword [esp + 0x44]
cmp ecx, eax
jl 0x100fecc5
cmp ecx, dword [ebp + 0xfac]
jge 0x100fecc5
mov edx, dword [esp + 0x44]
sub edx, eax
mov al, byte [edx + ebp + 4]
mov byte [esp + 0x3c], al
jmp 0x100fecca
mov byte [esp + 0x3c], 0x20
mov eax, dword [ebp + 0xfb0]
test eax, eax
je 0x100fecf2
mov eax, dword [esp + 0x58]
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx]
test al, al
je 0x100fecf2
mov esi, dword [esp + 0x38]
mov byte [esp + 0x17], 0x20
jmp case.0x100ff1b7.48
cmp bl, 0x20
je 0x100fed01
cmp bl, 9
jb 0x100fed09
cmp bl, 0xd
ja 0x100fed09
mov al, byte [esp + 0x5f]
test al, al
jne 0x100fed15
mov al, byte [esp + 0x42]
test al, al
je 0x100fed15
inc dword [esp + 0x4c]
mov ecx, dword [esp + 0x2c]
push ecx
push edi
call fcn.10102660
mov dword [esp + 0x20], eax
mov al, byte [esp + 0x4a]
add esp, 8
test al, al
je case.0x100fee9a.48
mov eax, dword [esp + 0x34]
dec eax
je 0x100fee71
sub eax, 2
je 0x100fed4f
dec eax
je 0x100fee71
jmp case.0x100fee9a.48
cmp edi, 0x5c
je case.0x100fee9a.48
cmp bl, 0x3a
jne 0x100fed81
mov al, byte [esp + 0x20]
cmp al, 0xa
je 0x100fed78
cmp al, 0xd
jne 0x100fef8f
cmp byte [esp + 0x3c], 0xa
jne 0x100fef8f
inc dword [esp + 0x28]
jmp 0x100fef8f
cmp bl, 0xa
jne case.0x100fee9a.48
mov al, byte [esp + 0x20]
cmp al, 0xd
jne 0x100fed9e
cmp byte [esp + 0x3c], bl
je 0x100feedb
jmp 0x100feda6
cmp al, 0xa
je 0x100feedb
mov eax, dword [esp + 0x28]
and ah, 0xfb
shl eax, 3
test eax, eax
mov dword [esp + 0x1c], eax
jle 0x100feedb
mov eax, dword [esp + 0x38]
mov edx, dword [ebp + 0xfa8]
mov dword [esp + 0x54], eax
cmp eax, edx
jl 0x100fedd6
cmp eax, dword [ebp + 0xfac]
jl 0x100fedfd
mov eax, dword [esp + 0x54]
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx + 4]
mov edx, dword [ebp + 0xfa8]
mov eax, dword [esp + 0x54]
cmp eax, edx
jl 0x100fee1a
mov ecx, eax
mov eax, dword [ebp + 0xfac]
cmp ecx, eax
jge 0x100fee1a
mov eax, dword [esp + 0x54]
mov ecx, eax
sub ecx, edx
mov cl, byte [ecx + ebp + 4]
cmp cl, 9
jne 0x100fee15
sub dword [esp + 0x1c], 8
jmp 0x100fee27
cmp cl, 0x20
jne 0x100fee39
mov eax, dword [esp + 0x1c]
dec eax
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x1c]
inc eax
test ecx, ecx
mov dword [esp + 0x54], eax
jg 0x100fedca
jmp 0x100feedb
mov ecx, dword [esp + 0x1c]
test ecx, ecx
jle 0x100feedb
mov eax, ecx
cdq
and edx, 7
add eax, edx
mov edx, dword [esp + 0x28]
sar eax, 3
neg eax
add edx, eax
and ecx, reloc.OLEAUT32.dll_VariantInit
mov dword [esp + 0x28], edx
jns 0x100fee69
dec ecx
or ecx, 0xfffffff8
inc ecx
je 0x100feedb
dec dword [esp + 0x28]
jmp 0x100feedb
cmp edi, 0x7c
je case.0x100fee9a.48
cmp edi, 0x7d
je case.0x100fee9a.48
cmp edi, 0x2a
je case.0x100fee9a.48
cmp edi, 0x2b
je case.0x100fee9a.48
cmp edi, 0x2c
je case.0x100fee9a.48
lea eax, [edi - 0x30]
cmp eax, 0x4e
ja case.0x100fee9a.49
xor edx, edx
mov dl, byte [eax + 0x10102078]
jmp dword [edx*4 + 0x10102070]
cmp bl, 0x7b
je 0x100feeab
cmp bl, 0x7d
jne case.0x100fee9a.48
mov al, bl
mov ecx, dword [esp + 0x28]
sub al, 0x7b
neg al
sbb eax, eax
and al, 0xfe
inc eax
add ecx, eax
mov dword [esp + 0x28], ecx
cmp bl, 0xd
jne 0x100feed2
mov al, byte [esp + 0x20]
cmp al, 0xa
jne 0x100feedb
jmp 0x100fef8f
cmp bl, 0xa
jne 0x100fef8b
mov al, byte [esp + 0x42]
test al, al
je 0x100fef1f
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x78]
test edx, edx
mov eax, ecx
jne 0x100feef4
or ah, 0x10
cmp dword [esp + 0x28], ecx
jle 0x100fef01
test edx, edx
jle 0x100fef01
or ah, 0x20
mov edx, dword [ebp]
push eax
mov eax, dword [esp + 0x64]
mov ecx, ebp
push eax
call dword [edx + 0x4c]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], 0
mov dword [esp + 0x78], ecx
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x70]
and eax, 0xff
and ecx, 0xf
shl eax, 4
or eax, ecx
mov ecx, dword [esp + 0x68]
shl eax, 4
and ecx, 0xf
mov edx, dword [esp + 0x60]
or eax, ecx
mov cl, byte [esp + 0x27]
shl eax, 1
and ecx, 1
inc edx
or eax, ecx
mov cl, byte [esp + 0x33]
shl eax, 1
and ecx, 1
mov dword [esp + 0x60], edx
or eax, ecx
mov ecx, dword [esp + 0x2c]
mov edx, dword [ebp]
and ecx, 3
shl eax, 2
or eax, ecx
mov ecx, ebp
push eax
mov eax, dword [esp + 0x64]
push eax
call dword [edx + 0x2c]
mov al, byte [esp + 0x20]
cmp edi, 0x7f
ja 0x10101c7d
jmp 0x100ff6ee
mov al, byte [esp + 0x20]
cmp dword [esp + 0x2c], 1
jne 0x100ff13b
cmp bl, 0x3c
jne 0x100ff13b
cmp al, 0x2f
jne 0x100ff13b
lea ecx, [edi - 6]
cmp ecx, 0x5c
ja case.0x100fefbb.7
xor edx, edx
mov dl, byte [ecx + 0x101020d0]
jmp dword [edx*4 + 0x101020c8]
cmp edi, 0x2b
jne 0x100ff0f9
mov ecx, dword [ebp + 0xfa8]
mov eax, dword [esp + 0x44]
cmp eax, ecx
mov dword [esp + 0x54], 0
jl 0x100fefe9
cmp eax, dword [ebp + 0xfac]
jl 0x100ff010
mov ecx, dword [esp + 0x44]
mov eax, dword [ebp]
push ecx
mov ecx, ebp
call dword [eax + 4]
mov ecx, dword [ebp + 0xfa8]
mov eax, dword [esp + 0x44]
cmp eax, ecx
jl 0x100ff01c
mov edx, eax
mov eax, dword [ebp + 0xfac]
cmp edx, eax
jge 0x100ff01c
mov eax, dword [esp + 0x44]
sub eax, ecx
mov al, byte [eax + ebp + 4]
jmp 0x100ff01e
mov al, 0x20
mov edx, dword [esp + 0x44]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x54]
cmp al, 0x20
je 0x100ff0a5
cmp al, 9
jb 0x100ff036
cmp al, 0xd
jbe 0x100ff0a5
movsx eax, al
cmp eax, 0x41
jl 0x100ff046
cmp eax, 0x5a
jg 0x100ff046
add eax, 0x20
mov byte [esp + edx + 0x9c], al
mov eax, dword [esp + 0x1c]
inc edx
inc eax
cmp eax, ecx
mov dword [esp + 0x54], edx
mov dword [esp + 0x1c], eax
jl 0x100ff067
cmp eax, dword [ebp + 0xfac]
jl 0x100ff08e
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebp]
push ecx
mov ecx, ebp
call dword [eax + 4]
mov ecx, dword [ebp + 0xfa8]
mov eax, dword [esp + 0x1c]
cmp eax, ecx
jl 0x100ff09a
mov edx, eax
mov eax, dword [ebp + 0xfac]
cmp edx, eax
jge 0x100ff09a
mov eax, dword [esp + 0x1c]
sub eax, ecx
mov al, byte [eax + ebp + 4]
jmp 0x100ff09c
mov al, 0x20
mov edx, dword [esp + 0x54]
cmp edx, 6
jl 0x100ff02a
mov byte [esp + edx + 0x9c], 0
mov dword [esp + 0x1c], str.script
lea eax, [esp + 0x9c]
mov cl, byte [eax]
mov edx, dword [esp + 0x1c]
mov byte [esp + 0x53], cl
cmp cl, byte [edx]
jne 0x100ff0ec
test cl, cl
je 0x100ff0e8
mov cl, byte [eax + 1]
mov byte [esp + 0x53], cl
cmp cl, byte [edx + 1]
jne 0x100ff0ec
add eax, 2
add edx, 2
test cl, cl
mov dword [esp + 0x1c], edx
jne 0x100ff0bc
xor eax, eax
jmp 0x100ff0f1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x100ff6ea
mov ecx, dword [esp + 0x18]
mov eax, dword [ebp]
dec esi
push ecx
push esi
mov ecx, ebp
call dword [eax + 0x48]
mov esi, dword [esp + 0x44]
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x4c]
mov edi, 2
add eax, edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x70], 1
mov dword [esp + 0x4c], eax
mov byte [esp + 0x27], 1
jmp case.0x100ff1b7.48
cmp edi, 0x10
je 0x100ff29c
push edi
call fcn.101030a0
add esp, 4
test al, al
jne 0x100ff29c
cmp edi, 0x7c
je 0x100ff29c
cmp bl, 0x3c
jne 0x100ff29c
cmp byte [esp + 0x20], 0x3f
jne 0x100ff29c
push edi
call fcn.10103030
add esp, 4
test al, al
jne 0x100ff29c
mov eax, dword [ebp]
lea edx, [esi + 0xa]
push 4
push edx
mov ecx, ebp
call dword [eax + 0x40]
add eax, 2
push eax
push ebp
call fcn.10102410
add esp, 0x10
cmp eax, 4
mov dword [esp + 0x34], eax
je case.0x100ff1b7.49
lea eax, [edi - 0x30]
cmp eax, 0x4e
ja case.0x100ff1b7.49
xor ecx, ecx
mov cl, byte [eax + 0x10102138]
jmp dword [ecx*4 + 0x10102130]
mov eax, dword [esp + 0x18]
mov edx, dword [ebp]
dec esi
push eax
push esi
mov ecx, ebp
call dword [edx + 0x48]
mov esi, dword [esp + 0x38]
mov edx, dword [ebp]
mov dword [esp + 0x64], edi
mov edi, dword [esp + 0x4c]
lea ecx, [esi + 0xa]
inc edi
push ecx
mov ecx, ebp
mov dword [esp + 0x50], edi
call dword [edx + 0x40]
add eax, 2
push eax
push ebp
call fcn.101025a0
mov ebx, dword [esp + 0x40]
add esp, 0xc
add esi, eax
cmp ebx, 5
jne 0x100ff20f
mov eax, dword [ebp]
push 0xc
push esi
mov ecx, ebp
call dword [eax + 0x48]
jmp 0x100ff21a
mov edx, dword [ebp]
push 0x12
push esi
mov ecx, ebp
call dword [edx + 0x48]
push ebx
call fcn.10102f80
mov edi, eax
mov eax, dword [esp + 0x30]
add esp, 4
dec eax
neg eax
sbb eax, eax
mov dword [esp + 0x10], edi
add eax, 3
mov dword [esp + 0x2c], eax
mov al, byte [esp + 0x41]
test al, al
je 0x100ff256
mov ecx, dword [esp + 0x28]
inc ecx
cmp ebx, 5
mov dword [esp + 0x28], ecx
jne 0x100ff256
mov eax, ecx
dec eax
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0xfa8]
cmp esi, eax
jl 0x100ff26c
cmp esi, dword [ebp + 0xfac]
jl 0x100ff3ff
mov edx, dword [ebp]
push esi
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
cmp esi, eax
jl 0x100ff40c
cmp esi, dword [ebp + 0xfac]
jge 0x100ff40c
mov ecx, esi
sub ecx, eax
mov bl, byte [ecx + ebp + 4]
jmp case.0x100ff1b7.48
lea eax, [edi - 0x2a]
cmp eax, 0x53
ja case.0x100ff2ac.43
xor edx, edx
mov dl, byte [eax + 0x10102190]
jmp dword [edx*4 + 0x10102188]
cmp bl, 0x3c
jne case.0x100ff2ac.42
cmp byte [esp + 0x20], 0x25
jne case.0x100ff2ac.42
push edi
call fcn.101030a0
add esp, 4
test al, al
jne case.0x100ff2ac.42
mov ecx, dword [esp + 0x18]
mov eax, dword [ebp]
lea edx, [esi - 1]
push ecx
push edx
mov ecx, ebp
call dword [eax + 0x48]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x64], edi
dec eax
neg eax
sbb eax, eax
add eax, 3
mov dword [esp + 0x2c], eax
mov al, byte [esp + 0x3c]
cmp al, 0x40
jne 0x100ff31e
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x44]
add eax, 2
mov edi, 0x10
mov dword [esp + 0x4c], eax
jmp 0x100ff3af
mov al, byte [esp + 0x3c]
cmp al, 0x2d
jne 0x100ff382
mov eax, dword [ebp + 0xfa8]
lea edi, [esi + 3]
cmp edi, eax
jl 0x100ff33b
cmp edi, dword [ebp + 0xfac]
jl 0x100ff356
mov edx, dword [ebp]
push edi
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
cmp edi, eax
jl 0x100ff393
cmp edi, dword [ebp + 0xfac]
jge 0x100ff393
mov ecx, edi
sub ecx, eax
cmp byte [ecx + ebp + 4], 0x2d
jne 0x100ff393
mov edx, dword [ebp]
push 0xf
push edi
mov ecx, ebp
call dword [edx + 0x48]
mov edi, 0x14
mov dword [esp + 0x34], 2
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp al, 0x3d
jne 0x100ff393
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x44]
add eax, 2
jmp 0x100ff39c
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x38]
inc eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x68]
push eax
call fcn.10102f80
add esp, 4
mov edi, eax
mov edx, dword [ebp]
push 0xf
push esi
mov ecx, ebp
mov dword [esp + 0x18], edi
mov dword [esp + 0x3c], 2
call dword [edx + 0x48]
mov al, byte [esp + 0x41]
test al, al
je 0x100ff3d2
inc dword [esp + 0x28]
mov eax, dword [ebp + 0xfa8]
cmp esi, eax
jl 0x100ff3e4
cmp esi, dword [ebp + 0xfac]
jl 0x100ff3ff
mov eax, dword [ebp]
push esi
mov ecx, ebp
call dword [eax + 4]
mov eax, dword [ebp + 0xfa8]
cmp esi, eax
jl 0x100ff40c
cmp esi, dword [ebp + 0xfac]
jge 0x100ff40c
mov ecx, esi
sub ecx, eax
mov bl, byte [ecx + ebp + 4]
jmp case.0x100ff1b7.48
mov bl, 0x20
jmp case.0x100ff1b7.48
mov eax, dword [esp + 0x34]
test eax, eax
je 0x100ff424
cmp eax, 5
jne 0x100ff4fb
cmp byte [esp + 0x17], 0x3c
jne 0x100ff4fb
cmp bl, 0x21
jne 0x100ff4fb
mov ecx, dword [esp + 0x18]
cmp ecx, 0x11
je 0x100ff4fb
mov edx, ecx
push edx
call fcn.10103010
add esp, 4
test al, al
jne 0x100ff4f7
mov eax, dword [esp + 0x18]
push eax
call fcn.10103030
add esp, 4
test al, al
jne 0x100ff4f7
mov eax, dword [esp + 0x18]
mov edx, dword [ebp]
lea ecx, [esi - 2]
push eax
push ecx
mov ecx, ebp
mov dword [esp + 0x6c], edi
call dword [edx + 0x48]
cmp byte [esp + 0x20], 0x2d
jne 0x100ff4a9
cmp byte [esp + 0x3c], 0x2d
jne 0x100ff4a9
mov esi, dword [esp + 0x44]
mov edx, dword [ebp]
mov edi, 9
mov ecx, ebp
push edi
push esi
mov dword [esp + 0x18], edi
call dword [edx + 0x48]
jmp 0x100ff4e2
mov ecx, dword [esp + 0x38]
lea eax, [esi + 7]
push ebp
push eax
push ecx
call fcn.10102ec0
add esp, 0xc
test al, al
je 0x100ff4c6
mov edi, 0x11
jmp 0x100ff4de
mov edx, dword [ebp]
push 0x15
push esi
mov ecx, ebp
call dword [edx + 0x48]
mov dword [esp + 0x34], 6
mov edi, 0x16
mov dword [esp + 0x10], edi
mov al, byte [esp + 0x41]
test al, al
je case.0x100ff1b7.48
inc dword [esp + 0x28]
jmp case.0x100ff1b7.48
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x2c]
cmp ecx, 2
je 0x100ff509
cmp ecx, 3
jne case.0x100ff53b.48
cmp eax, 4
jne 0x100ff527
cmp bl, 0x3f
jne 0x100ff52b
push edi
call fcn.101030a0
add esp, 4
test al, al
jne 0x100ff52b
cmp edi, 0x7c
jne 0x100ff547
jmp 0x100ff52b
test eax, eax
je case.0x100ff53b.48
lea eax, [edi - 0x30]
cmp eax, 0x4e
ja case.0x100ff53b.49
xor ecx, ecx
mov cl, byte [eax + 0x101021ec]
jmp dword [ecx*4 + 0x101021e4]
cmp bl, 0x25
jne case.0x100ff53b.48
cmp byte [esp + 0x20], 0x3e
je 0x100ff56b
cmp dword [esp + 0x34], 6
jne 0x100fef79
cmp bl, 0x3e
jne 0x100fef79
cmp edi, 0x1d
je 0x100fef79
cmp edi, 0x10
jne 0x100ff58f
mov edx, dword [esp + 0x68]
lea eax, [esi - 1]
push edx
mov edx, dword [ebp]
push eax
mov ecx, ebp
call dword [edx + 0x40]
push eax
push ebp
call fcn.10102410
add esp, 0x10
mov dword [esp + 0x68], eax
lea eax, [edi - 0x14]
cmp eax, 0x65
ja case.0x100ff5a3.25
xor ecx, ecx
mov cl, byte [eax + 0x10102254]
jmp dword [ecx*4 + 0x1010223c]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x8c]
push edx
mov edx, dword [ebp]
push ebp
lea ecx, [esi - 1]
push eax
push ecx
mov ecx, ebp
call dword [edx + 0x40]
push eax
call fcn.101029a0
add esp, 0x14
jmp 0x100ff664
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x84]
push eax
mov eax, dword [ebp]
push ebp
lea edx, [esi - 1]
push ecx
push edx
mov ecx, ebp
call dword [eax + 0x40]
push eax
call fcn.10102ab0
add esp, 0x14
jmp 0x100ff664
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x88]
lea edx, [esp + 0x16c]
push ecx
push edx
mov edx, dword [ebp]
push ebp
lea ecx, [esi - 1]
push eax
push ecx
mov ecx, ebp
call dword [edx + 0x40]
push eax
call fcn.10102bc0
add esp, 0x18
jmp 0x100ff664
mov eax, dword [esp + 0x80]
mov edx, dword [ebp]
push ebp
lea ecx, [esi - 1]
push eax
push ecx
mov ecx, ebp
call dword [edx + 0x40]
push eax
call fcn.10102d40
add esp, 0x10
jmp 0x100ff664
mov eax, dword [ebp]
lea ecx, [esi - 1]
push edi
push ecx
mov ecx, ebp
call dword [eax + 0x48]
jmp 0x100ff664
mov eax, dword [esp + 0x18]
mov edx, dword [ebp]
lea ecx, [esi - 1]
push eax
push ecx
mov ecx, ebp
call dword [edx + 0x48]
mov eax, dword [esp + 0x34]
cmp eax, 6
je 0x100ff67a
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x38]
inc ecx
mov dword [esp + 0x4c], ecx
cmp bl, 0x25
jne 0x100ff68c
mov edx, dword [ebp]
push 0xf
push esi
mov ecx, ebp
call dword [edx + 0x48]
jmp 0x100ff6b5
cmp eax, 5
jne 0x100ff698
mov eax, dword [ebp]
push 0xd
jmp 0x100ff6af
cmp eax, 6
jne 0x100ff6aa
mov edx, dword [ebp]
push 0x15
push esi
mov ecx, ebp
call dword [edx + 0x48]
jmp 0x100ff6b5
mov eax, dword [ebp]
push 0x12
push esi
mov ecx, ebp
call dword [eax + 0x48]
mov edx, dword [esp + 0x2c]
mov al, byte [esp + 0x41]
mov edi, dword [esp + 0x64]
xor ecx, ecx
cmp edx, 3
mov dword [esp + 0x10], edi
sete cl
test al, al
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], 0
je case.0x100ff1b7.48
dec dword [esp + 0x28]
jmp case.0x100ff1b7.48
mov al, byte [esp + 0x20]
xor edx, edx
mov dl, byte [edi + 0x10102388]
jmp dword [edx*4 + 0x101022bc]
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x40]
cmp esi, eax
setge al
cmp edi, 0x47
jne 0x10101d8a
cmp bl, 0x22
jne 0x10101caa
test al, al
je 0x10101cc2
mov edi, 0x4b
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x27
jne 0x10101cbd
mov edi, 0x48
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101cfe
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne 0x10101cd7
cmp bl, 0x5f
jne 0x10101ce5
mov edi, 0x4a
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101cfe
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne case.0x100ff1b7.48
cmp bl, 0x25
je 0x10101d7a
cmp bl, 0x5e
je 0x10101d7a
cmp bl, 0x26
je 0x10101d7a
cmp bl, 0x2a
je 0x10101d7a
cmp bl, 0x28
je 0x10101d7a
cmp bl, 0x29
je 0x10101d7a
cmp bl, 0x2d
je 0x10101d7a
cmp bl, 0x2b
je 0x10101d7a
cmp bl, 0x3d
je 0x10101d7a
cmp bl, 0x7c
je 0x10101d7a
cmp bl, 0x7b
je 0x10101d7a
cmp bl, 0x7d
je 0x10101d7a
cmp bl, 0x5b
je 0x10101d7a
cmp bl, 0x5d
je 0x10101d7a
cmp bl, 0x3a
je 0x10101d7a
cmp bl, 0x3b
je 0x10101d7a
cmp bl, 0x3c
je 0x10101d7a
cmp bl, 0x3e
je 0x10101d7a
cmp bl, 0x2c
je 0x10101d7a
cmp bl, 0x2f
je 0x10101d7a
cmp bl, 0x3f
je 0x10101d7a
cmp bl, 0x21
je 0x10101d7a
cmp bl, 0x2e
je 0x10101d7a
cmp bl, 0x7e
jne case.0x100ff1b7.48
mov edx, dword [ebp]
push 0x47
push esi
mov ecx, ebp
call dword [edx + 0x48]
jmp case.0x100ff1b7.48
cmp edi, 0x51
jne 0x10101e8a
cmp bl, 0x22
jne 0x10101daa
test al, al
je 0x10101dc2
mov edi, 0x55
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x27
jne 0x10101dbd
mov edi, 0x52
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101dfe
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne 0x10101dd7
cmp bl, 0x5f
jne 0x10101de5
mov edi, 0x54
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101dfe
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne case.0x100ff1b7.48
cmp bl, 0x25
je 0x10101e7a
cmp bl, 0x5e
je 0x10101e7a
cmp bl, 0x26
je 0x10101e7a
cmp bl, 0x2a
je 0x10101e7a
cmp bl, 0x28
je 0x10101e7a
cmp bl, 0x29
je 0x10101e7a
cmp bl, 0x2d
je 0x10101e7a
cmp bl, 0x2b
je 0x10101e7a
cmp bl, 0x3d
je 0x10101e7a
cmp bl, 0x7c
je 0x10101e7a
cmp bl, 0x7b
je 0x10101e7a
cmp bl, 0x7d
je 0x10101e7a
cmp bl, 0x5b
je 0x10101e7a
cmp bl, 0x5d
je 0x10101e7a
cmp bl, 0x3a
je 0x10101e7a
cmp bl, 0x3b
je 0x10101e7a
cmp bl, 0x3c
je 0x10101e7a
cmp bl, 0x3e
je 0x10101e7a
cmp bl, 0x2c
je 0x10101e7a
cmp bl, 0x2f
je 0x10101e7a
cmp bl, 0x3f
je 0x10101e7a
cmp bl, 0x21
je 0x10101e7a
cmp bl, 0x2e
je 0x10101e7a
cmp bl, 0x7e
jne case.0x100ff1b7.48
mov eax, dword [ebp]
push 0x51
push esi
mov ecx, ebp
call dword [eax + 0x48]
jmp case.0x100ff1b7.48
cmp edi, 0x29
jne case.0x100ff1b7.48
cmp bl, 0x2f
jne 0x10101f07
mov al, byte [esp + 0x20]
cmp al, 0x2a
jne 0x10101ef5
mov eax, dword [ebp + 0xfa8]
lea edi, [esi + 2]
cmp edi, eax
jl 0x10101eb5
cmp edi, dword [ebp + 0xfac]
jl 0x10101ed0
mov edx, dword [ebp]
push edi
mov ecx, ebp
call dword [edx + 4]
mov eax, dword [ebp + 0xfa8]
cmp edi, eax
jl 0x10101ee7
cmp edi, dword [ebp + 0xfac]
jge 0x10101ee7
sub edi, eax
cmp byte [edi + ebp + 4], 0x2a
jne 0x10101ee7
mov edi, 0x2c
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
mov edi, 0x2a
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp al, 0x2f
jne 0x10101f3a
mov edi, 0x2b
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x22
jne 0x10101f1e
test al, al
je 0x10101f3a
mov edi, 0x30
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x27
jne 0x10101f35
test al, al
je 0x10101f3a
mov edi, 0x31
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101f76
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne 0x10101f4f
cmp bl, 0x5f
jne 0x10101f5d
mov edi, 0x2e
mov dword [esp + 0x10], edi
jmp case.0x100ff1b7.48
cmp bl, 0x80
jae 0x10101f76
movsx eax, bl
push eax
call fcn.1014d5cc
add esp, 4
test eax, eax
jne case.0x100ff1b7.48
cmp bl, 0x25
je 0x10101fee
cmp bl, 0x5e
je 0x10101fee
cmp bl, 0x26
je 0x10101fee
cmp bl, 0x2a
je 0x10101fee
cmp bl, 0x28
je 0x10101fee
cmp bl, 0x29
je 0x10101fee
cmp bl, 0x2d
je 0x10101fee
cmp bl, 0x2b
je 0x10101fee
cmp bl, 0x3d
je 0x10101fee
cmp bl, 0x7c
je 0x10101fee
cmp bl, 0x7b
je 0x10101fee
cmp bl, 0x7d
je 0x10101fee
cmp bl, 0x5b
je 0x10101fee
cmp bl, 0x5d
je 0x10101fee
cmp bl, 0x3a
je 0x10101fee
cmp bl, 0x3b
je 0x10101fee
cmp bl, 0x3c
je 0x10101fee
cmp bl, 0x3e
je 0x10101fee
cmp bl, 0x2c
je 0x10101fee
cmp bl, 0x2f
je 0x10101fee
cmp bl, 0x3f
je 0x10101fee
cmp bl, 0x21
je 0x10101fee
cmp bl, 0x2e
je 0x10101fee
cmp bl, 0x7e
jne case.0x100ff1b7.48
mov eax, dword [esp + 0x2c]
mov edi, dword [ebp]
push eax
push 0x32
call fcn.10102660
add esp, 8
mov ecx, ebp
push eax
push esi
call dword [edi + 0x48]
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x6c]
inc esi
cmp esi, eax
mov dword [esp + 0x74], esi
jl 0x100febef
mov ecx, dword [esp + 0x2c]
push ecx
push edi
call fcn.10102660
mov edx, dword [ebp]
add esp, 8
mov ecx, ebp
push eax
mov eax, dword [esp + 0x70]
dec eax
push eax
call dword [edx + 0x48]
mov al, byte [esp + 0x42]
pop ebx
test al, al
je 0x10102064
mov esi, dword [esp + 0x5c]
mov edx, dword [ebp]
push esi
mov ecx, ebp
call dword [edx + 0x1c]
mov edi, dword [esp + 0x74]
mov edx, dword [ebp]
and eax, 0xfffff000
mov ecx, ebp
or eax, edi
push eax
push esi
call dword [edx + 0x4c]
pop edi
pop esi
pop ebp
add esp, 0x224
ret