Function at 0x44b7d2
Capabilities:
Parse credit card information

Disassembly:
push ebp
lea ebp, [esp - 0x5c]
sub esp, 0xc0
mov eax, dword [ebp + 0x74]
push esi
mov esi, dword [ebp + 0x70]
mov dword [ebp + 0x48], eax
mov eax, dword [esi]
lea ecx, [eax + 1]
mov dword [esi], ecx
cmp eax, dword [esi + 4]
jb 0x44b7fb
push 0xfffffffffffffff8
pop eax
jmp 0x44ced1
test byte [ebp + 0x7c], 2
push ebx
mov ebx, dword [ebp + 0x64]
je 0x44b814
mov eax, dword [ebp + 0x78]
mov dword [ebp + 0x14], eax
lea eax, [ebp + 0x14]
mov dword [ebp + 0x18], ebx
mov dword [ebp + 0x78], eax
push edi
mov edi, dword [ebp + 0x68]
mov al, byte [edi]
and dword [ebp + 0x44], 0
mov byte [ebp + 0x73], al
movzx eax, al
mov ecx, eax
cmp ecx, 0x4c
jle 0x44b85c
add ecx, 0xffffffb4
cmp ecx, 0x96
mov dword [ebp + 0x58], ecx
jle 0x44b849
movzx ecx, byte [edi + 4]
movzx edx, byte [edi + 5]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x58], ecx
xor edx, edx
add ecx, ecx
inc edx
cmp ecx, dword [esi + 0x10]
jl 0x44c727
push 0x4c
pop ecx
jmp 0x44b85f
xor edx, edx
inc edx
cmp ecx, 0x4c
ja case.0x44b86f.47
movzx ecx, byte [ecx + 0x44cf8a]
jmp dword [ecx*4 + 0x44ceda]
mov edi, dword [esi + 0x54]
test edi, edi
je 0x44c7bd
cmp dword [edi + 4], 0
jne 0x44c7bd
mov eax, dword [edi]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0x14]
shl eax, 2
push eax
push dword [edi + 0x10]
push dword [esi + 8]
call fcn.00450800
mov eax, dword [edi + 0xc]
mov dword [esi + 0x40], eax
mov eax, dword [ebp + 0x48]
mov edi, dword [edi + 8]
add esp, 0xc
mov dword [ebp + 0x74], eax
jmp 0x44b818
movzx eax, byte [edi + 1]
mov dword [ebp + 0x74], eax
inc edi
inc edi
jmp 0x44b818
push 2
push 0
push dword [ebp + 0x74]
lea eax, [edi + 3]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
cmp eax, 1
je 0x44b900
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je case.0x44b86f.65
cmp byte [edi], 0x3e
je 0x44cec8
test byte [ebp + 0x7c], 1
jne 0x44c906
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44b913
mov eax, dword [esi + 0x48]
add edi, 3
mov dword [ebp + 0x6c], eax
jmp 0x44b818
push 2
push 0
push dword [ebp + 0x74]
lea eax, [edi + 3]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
cmp eax, 1
je 0x44cec8
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je case.0x44b86f.66
test byte [ebp + 0x7c], 1
jne 0x44c906
add edi, 3
jmp 0x44b818
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
sub ebx, eax
cmp ebx, dword [esi + 0x38]
jb 0x44cec8
jmp case.0x44b86f.72
cmp dword [0x47611c], 0
je 0x44b8c0
movzx eax, byte [edi + 1]
mov ecx, dword [esi + 0x3c]
mov dword [ebp + 0x20], eax
mov eax, dword [esi + 8]
mov dword [ebp + 0x24], eax
mov eax, dword [esi + 0x38]
sub ecx, eax
and dword [ebp + 0x1c], 0
mov dword [ebp + 0x2c], ecx
mov ecx, dword [esi + 0x40]
sub ecx, eax
mov dword [ebp + 0x28], eax
mov dword [ebp + 0x30], ecx
mov ecx, ebx
sub ecx, eax
mov eax, dword [ebp + 0x6c]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp + 0x38], eax
mov eax, dword [esi + 0x4c]
mov dword [ebp + 0x3c], eax
mov eax, dword [esi + 0x58]
mov dword [ebp + 0x40], eax
lea eax, [ebp + 0x1c]
push eax
mov dword [ebp + 0x34], ecx
call dword [0x47611c]
pop ecx
test eax, eax
jg 0x44cec8
jl 0x44cecf
jmp 0x44b8c0
mov dword [ebp + 0x70], edi
mov dword [ebp + 0x58], ebx
push 2
push dword [ebp + 0x78]
lea eax, [edi + 3]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
cmp eax, 1
je 0x44ba4e
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44ba14
mov al, byte [edi]
cmp al, 0x46
je 0x44ba5c
cmp al, 0x3d
jne 0x44cec8
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44ba5c
cmp byte [edi], 0x3e
mov eax, dword [esi + 0x48]
mov ebx, dword [esi + 0x44]
mov dword [ebp + 0x6c], eax
je case.0x44b86f.72
cmp ebx, dword [ebp + 0x58]
je case.0x44b86f.72
lea eax, [edi + 3]
cmp byte [eax], 0xf
mov dword [ebp + 0x58], eax
jne 0x44baa5
mov ecx, dword [ebp + 0x74]
movzx eax, byte [edi + 4]
and ecx, 0xfffffff8
or eax, ecx
mov dword [ebp + 0x74], eax
cmp byte [edi], 0x40
jne 0x44c90e
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push dword [ebp + 0x58]
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
push 2
push dword [ebp + 0x78]
push dword [ebp + 0x74]
jmp 0x44bcb4
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je case.0x44b86f.61
jmp 0x44b818
push 2
push dword [ebp + 0x78]
inc edi
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44bb13
jmp case.0x44b86f.72
inc edi
mov eax, edi
movzx ecx, byte [eax + 1]
movzx edx, byte [eax + 2]
shl ecx, 8
or ecx, edx
add eax, ecx
cmp byte [eax], 0x3d
je 0x44bb2f
push 2
push dword [ebp + 0x78]
add eax, 3
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
jmp 0x44b818
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov ecx, edi
sub ecx, eax
mov eax, dword [ebp + 0x78]
mov eax, dword [eax + 4]
mov dword [ebp + 0x54], eax
mov eax, dword [ebp + 0x78]
mov eax, dword [eax]
mov dword [ebp + 0x78], eax
mov al, byte [ecx]
mov dword [ebp + 0x70], ecx
cmp al, 0x41
je 0x44c7cc
cmp al, 0x42
je 0x44c7cc
cmp al, 0x43
je 0x44c7cc
cmp al, 0x44
je 0x44c7cc
cmp al, 0x46
je 0x44c7cc
cmp al, 0x47
je 0x44bc6c
movzx eax, al
sub eax, 0x4c
cmp eax, 0x96
mov dword [ebp + 0x74], eax
jle 0x44bbe0
movzx eax, byte [ecx + 4]
movzx ecx, byte [ecx + 5]
shl eax, 8
or eax, ecx
mov dword [ebp + 0x74], eax
lea edx, [eax + eax]
test eax, eax
jle 0x44bc6c
cmp edx, dword [esi + 0x10]
mov dword [esi + 0x4c], eax
jl 0x44bbfc
mov dword [esi + 0x1c], 1
jmp 0x44bc30
mov ecx, dword [esi + 8]
shl edx, 2
mov dword [ebp + 0x58], edx
mov edx, dword [esi + 0xc]
sub edx, eax
mov edx, dword [ecx + edx*4]
mov eax, dword [ebp + 0x58]
mov dword [eax + ecx], edx
mov edx, dword [esi + 8]
mov ecx, ebx
sub ecx, dword [esi + 0x38]
mov dword [eax + edx + 4], ecx
mov eax, dword [ebp + 0x74]
lea ecx, [eax + eax]
cmp dword [ebp + 0x6c], ecx
jg 0x44bc30
add ecx, 2
mov dword [ebp + 0x6c], ecx
mov ecx, dword [esi + 0x54]
test ecx, ecx
je 0x44bc6c
cmp dword [ecx + 4], eax
jne 0x44bc6c
mov edi, ecx
mov eax, dword [edi]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0xc]
mov dword [esi + 0x40], eax
mov eax, dword [edi + 0x14]
shl eax, 2
push eax
push dword [edi + 0x10]
push dword [esi + 8]
call fcn.0044ea40
mov eax, dword [ebp + 0x48]
mov edi, dword [edi + 8]
add esp, 0xc
mov dword [ebp + 0x74], eax
jmp 0x44b818
cmp byte [edi], 0x3e
mov eax, dword [ebp + 0x48]
mov dword [ebp + 0x74], eax
je case.0x44b86f.72
cmp ebx, dword [ebp + 0x54]
je case.0x44b86f.72
cmp byte [edi], 0x40
jne 0x44c941
push 0
push dword [ebp + 0x78]
add edi, 3
push eax
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
push 2
push dword [ebp + 0x78]
push dword [ebp + 0x48]
push esi
push dword [ebp + 0x6c]
push dword [ebp + 0x70]
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44cec8
jmp 0x44cecf
cmp dword [esi + 0x20], 0
je 0x44bce0
cmp ebx, dword [esi + 0x38]
je 0x44cec8
test byte [ebp + 0x74], 2
je case.0x44b86f.1
cmp ebx, dword [esi + 0x38]
je 0x44bcf5
cmp byte [ebx - 1], 0xa
jne 0x44cec8
inc edi
jmp 0x44b818
cmp ebx, dword [esi + 0x38]
jmp 0x44bcef
mov eax, dword [esi + 0x50]
add eax, dword [esi + 0x38]
cmp ebx, eax
jmp 0x44bcef
test byte [ebp + 0x74], 2
je 0x44bd25
cmp ebx, dword [esi + 0x3c]
jae 0x44bd1f
mov al, byte [ebx]
cmp al, 0xa
je 0x44bcf5
cmp al, 0xd
jmp 0x44bcef
cmp dword [esi + 0x24], 0
jmp 0x44bcef
cmp dword [esi + 0x24], 0
jne 0x44cec8
cmp dword [esi + 0x2c], 0
jne case.0x44b86f.14
mov eax, dword [esi + 0x3c]
lea ecx, [eax - 2]
cmp ebx, ecx
jb 0x44cec8
dec eax
cmp ebx, eax
jne 0x44bd51
cmp byte [ebx], 0xa
jne 0x44cec8
cmp ebx, ecx
jne 0x44bcf5
cmp byte [ebx], 0xd
jne 0x44cec8
cmp byte [ebx + 1], 0xa
jmp 0x44bcef
cmp ebx, dword [esi + 0x3c]
jb 0x44cec8
jmp 0x44bcf5
cmp ebx, dword [esi + 0x38]
je 0x44bd86
movzx eax, byte [ebx - 1]
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 0x10
je 0x44bd86
mov dword [ebp + 0x58], edx
jmp 0x44bd8a
and dword [ebp + 0x58], 0
cmp ebx, dword [esi + 0x3c]
jae 0x44bd9b
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 0x10
jne 0x44bd9d
xor edx, edx
inc edi
xor eax, eax
cmp byte [ebp + 0x73], 4
jne 0x44bdae
cmp edx, dword [ebp + 0x58]
sete al
jmp 0x44bdb4
cmp edx, dword [ebp + 0x58]
setne al
test eax, eax
je 0x44b818
jmp 0x44cec8
test byte [ebp + 0x74], 4
jne case.0x44b86f.12
cmp ebx, dword [esi + 0x3c]
jae case.0x44b86f.12
cmp byte [ebx], 0xa
je 0x44cec8
mov eax, ebx
inc ebx
cmp eax, dword [esi + 0x3c]
jae 0x44cec8
jmp 0x44bcf5
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 4
jmp 0x44bcef
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 4
je 0x44cec8
jmp 0x44bcf5
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 1
jmp 0x44bcef
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 1
jmp 0x44be13
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x44bcef
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x18]
inc ebx
test byte [eax + ecx], 0x10
jmp 0x44be13
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add eax, eax
add edi, 3
cmp eax, dword [ebp + 0x6c]
mov dword [ebp + 0x58], eax
jge 0x44bea9
mov ecx, dword [esi + 8]
lea eax, [ecx + eax*4]
mov ecx, dword [eax]
test ecx, ecx
jl 0x44bea9
mov edx, dword [eax + 4]
sub edx, ecx
jmp 0x44beaf
mov edx, dword [esi + 0x3c]
sub edx, ebx
inc edx
mov al, byte [edi]
mov dword [ebp + 0x54], edx
cmp al, 0x2f
jb 0x44bf91
cmp al, 0x34
jbe 0x44bf04
cmp al, 0x36
ja 0x44bf91
movzx edx, byte [edi + 4]
xor ecx, ecx
cmp al, 0x36
movzx eax, byte [edi + 2]
sete cl
mov dword [ebp + 0x44], ecx
movzx ecx, byte [edi + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 3]
shl eax, 8
or eax, edx
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
jne 0x44befc
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
mov edx, dword [ebp + 0x54]
add edi, 5
jmp 0x44bf33
movzx eax, al
sub eax, 0x2f
mov ecx, eax
and ecx, 1
mov dword [ebp + 0x44], ecx
movsx ecx, byte [eax + 0x4670f8]
movsx eax, byte [eax + 0x467100]
inc edi
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x44bf33
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
test edx, edx
je 0x44b818
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44bf74
push dword [ebp + 0x74]
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
push ebx
mov ecx, esi
call fcn.0044b774
pop ecx
pop ecx
test eax, eax
je 0x44cec8
add ebx, dword [ebp + 0x54]
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x4c]
jle 0x44bf45
mov ecx, dword [ebp + 0x4c]
mov eax, dword [ebp + 0x50]
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
je 0x44c9bf
mov eax, dword [ebp + 0x4c]
mov dword [ebp + 0x70], eax
jmp 0x44c9a0
push dword [ebp + 0x74]
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
push ebx
mov ecx, esi
call fcn.0044b774
pop ecx
pop ecx
test eax, eax
je 0x44cec8
add ebx, dword [ebp + 0x54]
jmp 0x44b818
lea eax, [edi + 1]
add edi, 0x21
mov dword [ebp + 0x58], eax
mov al, byte [edi]
cmp al, 0x2f
jb 0x44c034
cmp al, 0x34
jbe 0x44c007
cmp al, 0x36
ja 0x44c034
movzx edx, byte [edi + 4]
xor ecx, ecx
cmp al, 0x36
movzx eax, byte [edi + 2]
sete cl
mov dword [ebp + 0x44], ecx
movzx ecx, byte [edi + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [edi + 3]
shl eax, 8
or eax, edx
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
jne 0x44bfff
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
xor edx, edx
add edi, 5
inc edx
jmp 0x44c03e
movzx eax, al
sub eax, 0x2f
mov ecx, eax
and ecx, edx
mov dword [ebp + 0x44], ecx
movsx ecx, byte [eax + 0x4670f8]
movsx eax, byte [eax + 0x467100]
inc edi
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x44c03e
mov eax, SysReAllocString
jmp 0x44c03b
mov eax, edx
mov ecx, edx
mov dword [ebp + 0x4c], edx
mov dword [ebp + 0x50], eax
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44c087
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp + 0x58]
inc ebx
mov dword [ebp + 0x54], edx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov al, byte [eax + ecx]
mov ecx, dword [ebp + 0x54]
test al, cl
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c045
mov eax, dword [ebp + 0x50]
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
je 0x44ca7d
mov eax, dword [ebp + 0x4c]
mov dword [ebp + 0x70], eax
jmp 0x44ca5e
movzx eax, byte [edi + 1]
mov ecx, dword [esi + 0x3c]
inc edi
sub ecx, ebx
inc edi
cmp eax, ecx
jg 0x44cec8
test byte [ebp + 0x74], 1
je 0x44c0fb
test eax, eax
jle 0x44b818
mov ecx, dword [esi + 0x14]
movzx edx, byte [edi]
dec eax
mov dword [ebp + 0x70], eax
movzx eax, byte [ebx]
mov al, byte [eax + ecx]
inc ebx
inc edi
cmp byte [edx + ecx], al
jne 0x44cec8
mov eax, dword [ebp + 0x70]
test eax, eax
jg 0x44c0c8
jmp 0x44b818
mov dl, byte [ebx]
mov cl, byte [edi]
dec eax
inc ebx
inc edi
cmp cl, dl
jne 0x44cec8
test eax, eax
jg 0x44c0ec
jmp 0x44b818
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov ecx, eax
mov dword [ebp + 0x4c], ecx
add edi, 3
jmp 0x44c168
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
and dword [ebp + 0x4c], 0
shl eax, 8
or eax, ecx
xor ecx, ecx
cmp byte [ebp + 0x73], 0x1b
sete cl
add edi, 3
mov dword [ebp + 0x44], ecx
mov ecx, dword [ebp + 0x4c]
jmp 0x44c168
add eax, 0xffffffec
mov ecx, eax
and ecx, edx
mov dword [ebp + 0x44], ecx
movsx ecx, byte [eax + 0x4670f8]
movsx eax, byte [eax + 0x467100]
inc edi
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x44c16b
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
mov edx, dword [esi + 0x3c]
sub edx, ebx
cmp ecx, edx
jg 0x44cec8
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x74], 1
mov dword [ebp + 0x54], edx
je 0x44c209
mov ecx, dword [esi + 0x14]
movzx ecx, byte [ecx + edx]
xor edx, edx
mov dword [ebp + 0x54], ecx
mov ecx, dword [ebp + 0x4c]
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44c1bf
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [edx + ecx]
inc ebx
cmp dword [ebp + 0x54], ecx
jne 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c1a0
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
mov dword [ebp + 0x70], ecx
jne 0x44cb15
cmp ecx, eax
mov dword [ebp + 0x58], ebx
jge 0x44cb34
cmp ebx, dword [esi + 0x3c]
jae 0x44cb53
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [edx + ecx]
cmp dword [ebp + 0x54], ecx
jne 0x44cb53
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44c1df
jmp 0x44cb53
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44c22b
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp + 0x54], ecx
jne 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c213
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
mov dword [ebp + 0x70], ecx
jne 0x44cb82
cmp ecx, eax
mov dword [ebp + 0x58], ebx
jge 0x44cba1
cmp ebx, dword [esi + 0x3c]
jae 0x44cbc0
movzx ecx, byte [ebx]
cmp dword [ebp + 0x54], ecx
jne 0x44cbc0
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44c24b
jmp 0x44cbc0
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx ecx, byte [ebx]
inc edi
inc ebx
test byte [ebp + 0x74], 1
je 0x44c291
mov eax, dword [esi + 0x14]
movzx edx, byte [edi]
mov cl, byte [eax + ecx]
inc edi
cmp byte [edx + eax], cl
jmp 0x44c297
movzx eax, byte [edi]
inc edi
cmp eax, ecx
jne 0x44b818
jmp 0x44cec8
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov ecx, eax
mov dword [ebp + 0x4c], ecx
add edi, 3
jmp 0x44c306
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
and dword [ebp + 0x4c], 0
shl eax, 8
or eax, ecx
xor ecx, ecx
cmp byte [ebp + 0x73], 0x24
sete cl
add edi, 3
mov dword [ebp + 0x44], ecx
mov ecx, dword [ebp + 0x4c]
jmp 0x44c306
add eax, 0xffffffe3
mov ecx, eax
and ecx, edx
mov dword [ebp + 0x44], ecx
movsx ecx, byte [eax + 0x4670f8]
movsx eax, byte [eax + 0x467100]
inc edi
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x44c309
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
mov edx, dword [esi + 0x3c]
sub edx, ebx
cmp ecx, edx
jg 0x44cec8
movzx edx, byte [edi]
inc edi
test byte [ebp + 0x74], 1
mov dword [ebp + 0x54], edx
je 0x44c3a7
mov ecx, dword [esi + 0x14]
movzx ecx, byte [ecx + edx]
xor edx, edx
mov dword [ebp + 0x54], ecx
mov ecx, dword [ebp + 0x4c]
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44c35d
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [edx + ecx]
inc ebx
cmp dword [ebp + 0x54], ecx
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c33e
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
mov dword [ebp + 0x70], ecx
jne 0x44cbf6
cmp ecx, eax
mov dword [ebp + 0x58], ebx
jge 0x44cc15
cmp ebx, dword [esi + 0x3c]
jae 0x44cc34
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [edx + ecx]
cmp dword [ebp + 0x54], ecx
je 0x44cc34
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44c37d
jmp 0x44cc34
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl 0x44c3c9
movzx ecx, byte [ebx]
inc ebx
cmp dword [ebp + 0x54], ecx
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c3b1
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
mov dword [ebp + 0x70], ecx
jne 0x44cc63
cmp ecx, eax
mov dword [ebp + 0x58], ebx
jge 0x44cc82
cmp ebx, dword [esi + 0x3c]
jae 0x44cca1
movzx ecx, byte [ebx]
cmp dword [ebp + 0x54], ecx
je 0x44cca1
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44c3e9
jmp 0x44cca1
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
mov ecx, eax
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x44], edx
add edi, 3
jmp 0x44c473
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
and dword [ebp + 0x4c], 0
shl eax, 8
or eax, ecx
xor ecx, ecx
cmp byte [ebp + 0x73], 0x2d
sete cl
add edi, 3
mov dword [ebp + 0x44], ecx
mov ecx, dword [ebp + 0x4c]
jmp 0x44c473
add eax, 0xffffffda
mov ecx, eax
and ecx, edx
mov dword [ebp + 0x44], ecx
movsx ecx, byte [eax + 0x4670f8]
movsx eax, byte [eax + 0x467100]
inc edi
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x50], eax
test eax, eax
jne 0x44c476
mov eax, SysReAllocString
mov dword [ebp + 0x50], eax
movzx edx, byte [edi]
mov dword [ebp + 0x58], edx
mov edx, dword [esi + 0x3c]
sub edx, ebx
inc edi
cmp ecx, edx
jg 0x44cec8
test ecx, ecx
jle case.default.0x44c4a1
mov edx, dword [ebp + 0x58]
add edx, 0xfffffffb
cmp edx, 7
ja case.default.0x44c4a1
jmp dword [edx*4 + 0x44cfda]
test byte [ebp + 0x74], 4
jne case.0x44c4a1.12
cmp ecx, 1
mov dword [ebp + 0x70], 1
jl case.default.0x44c4a1
mov dl, byte [ebx]
inc ebx
cmp dl, 0xa
je 0x44cec8
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], ecx
jle 0x44c4be
jmp case.default.0x44c4a1
add ebx, ecx
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 4
inc ebx
test cl, cl
jne 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c4ec
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 4
inc ebx
test cl, cl
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c51f
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 1
inc ebx
test cl, cl
jne 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c552
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 1
inc ebx
test cl, cl
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c581
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 0x10
inc ebx
test cl, cl
jne 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c5ad
jmp case.default.0x44c4a1
xor edx, edx
inc edx
cmp ecx, edx
mov dword [ebp + 0x70], edx
jl case.default.0x44c4a1
movzx edx, byte [ebx]
mov ecx, dword [esi + 0x18]
mov cl, byte [edx + ecx]
and cl, 0x10
inc ebx
test cl, cl
je 0x44cec8
inc dword [ebp + 0x70]
mov ecx, dword [ebp + 0x4c]
cmp dword [ebp + 0x70], ecx
jle 0x44c5d9
cmp ecx, eax
je 0x44b818
cmp dword [ebp + 0x44], 0
je 0x44cd4f
mov dword [ebp + 0x70], ecx
jmp 0x44cd2c
push 2
push dword [ebp + 0x78]
lea eax, [edi + 3]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je case.0x44b86f.76
jmp 0x44cec8
lea eax, [edi + 3]
cmp byte [eax], 0x48
jne 0x44c6af
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 5]
shl eax, 8
or eax, ecx
add eax, eax
cmp eax, 0x1fffe
jne 0x44c675
xor eax, eax
cmp dword [esi + 0x54], eax
setne al
jmp 0x44c685
cmp eax, dword [ebp + 0x6c]
jge 0x44c683
mov ecx, dword [esi + 8]
cmp dword [ecx + eax*4], 0
jge 0x44c689
xor eax, eax
test eax, eax
je 0x44c68e
push 6
pop eax
jmp 0x44c69e
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add eax, 3
push 2
push dword [ebp + 0x78]
add eax, edi
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
jmp 0x44c719
push 3
push 0
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
cmp eax, 1
jne 0x44c6f2
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 5]
shl eax, 8
or eax, ecx
lea edi, [edi + eax + 3]
jmp 0x44c6eb
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44c6dc
jmp 0x44c709
test eax, eax
jne 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
push 2
push dword [ebp + 0x78]
add edi, 3
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
jmp 0x44cecf
mov eax, dword [esi + 8]
shl ecx, 2
mov dword [ebp + 0x54], ecx
add ecx, eax
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [ebp + 0x44], ecx
mov ecx, dword [esi + 0xc]
sub ecx, dword [ebp + 0x58]
mov dword [ebp + 0x48], edx
lea eax, [eax + ecx*4]
mov ecx, dword [eax]
mov dword [ebp + 0x50], ecx
mov ecx, dword [esi + 0x4c]
mov dword [ebp + 0x70], ecx
mov ecx, ebx
sub ecx, dword [esi + 0x38]
mov dword [eax], ecx
push 2
push dword [ebp + 0x78]
lea eax, [edi + 3]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
mov eax, dword [ebp + 0x70]
mov dword [esi + 0x4c], eax
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
cmp byte [edi], 0x3d
je 0x44c758
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x48]
mov dword [eax + ecx], edx
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x44]
mov dword [eax + ecx + 4], edx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x58]
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x50]
mov dword [ecx + eax*4], edx
jmp 0x44cec8
cmp dword [esi + 0x30], 0
je 0x44c7cc
cmp ebx, dword [esi + 0x40]
je 0x44cec8
mov eax, dword [ebp + 0x6c]
mov dword [esi + 0x48], eax
mov dword [esi + 0x44], ebx
mov eax, edx
jmp 0x44cecf
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add eax, dword [esi + 0x34]
cmp byte [eax], 0x49
mov dword [ebp + 0x70], eax
jne 0x44c7f8
inc eax
mov dword [ebp + 0x70], eax
movzx ecx, byte [eax]
sub ecx, 0x4c
cmp ecx, 0x96
mov dword [ebp + 0x30], ecx
jle 0x44c819
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [ebp + 0x30], ecx
mov eax, dword [esi + 0x54]
mov dword [ebp + 0x2c], eax
lea eax, [ebp + 0x2c]
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xc]
add edi, 3
cmp eax, 0x1e
mov dword [ebp + 0x34], edi
mov dword [ebp + 0x40], eax
jg 0x44c83e
lea ecx, [ebp - 0x64]
mov dword [ebp + 0x3c], ecx
jmp 0x44c85a
shl eax, 2
push eax
call dword [0x4728a8]
pop ecx
mov dword [ebp + 0x3c], eax
test eax, eax
jne 0x44c857
push 0xfffffffffffffffa
jmp 0x44cece
mov eax, dword [ebp + 0x40]
shl eax, 2
push eax
push dword [esi + 8]
push dword [ebp + 0x3c]
call fcn.0044ea40
mov eax, dword [esi + 0x40]
mov edi, dword [ebp + 0x70]
add esp, 0xc
mov dword [ebp + 0x38], eax
mov dword [esi + 0x40], ebx
push 2
push dword [ebp + 0x78]
lea eax, [edi + 3]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push eax
push ebx
call fcn.0044b7d2
add esp, 0x1c
cmp eax, 1
je 0x44c8ee
test eax, eax
jne 0x44cecf
lea eax, [ebp + 0x2c]
mov dword [esi + 0x54], eax
mov eax, dword [ebp + 0x40]
shl eax, 2
push eax
push dword [ebp + 0x3c]
push dword [esi + 8]
call fcn.0044ea40
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
shl eax, 8
or eax, ecx
add edi, eax
add esp, 0xc
cmp byte [edi], 0x3d
je 0x44c878
mov eax, dword [ebp + 0x2c]
mov dword [esi + 0x54], eax
lea eax, [ebp - 0x64]
cmp dword [ebp + 0x3c], eax
je 0x44cec8
push dword [ebp + 0x3c]
call dword [0x4728ac]
pop ecx
jmp 0x44cec8
mov eax, dword [ebp + 0x2c]
mov dword [esi + 0x54], eax
lea eax, [ebp - 0x64]
cmp dword [ebp + 0x3c], eax
je 0x44c906
push dword [ebp + 0x3c]
call dword [0x4728ac]
pop ecx
xor eax, eax
inc eax
jmp 0x44cecf
push 2
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push dword [ebp + 0x70]
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
push eax
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push dword [ebp + 0x58]
jmp 0x44bcbb
push 2
push dword [ebp + 0x78]
push eax
push esi
push dword [ebp + 0x6c]
push dword [ebp + 0x70]
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
push eax
push dword [ebp + 0x78]
add edi, 3
push dword [ebp + 0x48]
push esi
push dword [ebp + 0x6c]
push edi
jmp 0x44bcbb
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
push dword [ebp + 0x74]
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
push ebx
mov ecx, esi
call fcn.0044b774
pop ecx
pop ecx
test eax, eax
je 0x44cec8
add ebx, dword [ebp + 0x54]
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44c973
jmp 0x44cecf
cmp ecx, eax
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x70], ecx
jge 0x44c9f0
push dword [ebp + 0x74]
mov eax, dword [ebp + 0x54]
mov edx, dword [ebp + 0x58]
push ebx
mov ecx, esi
call fcn.0044b774
pop ecx
pop ecx
test eax, eax
je 0x44ca11
add ebx, dword [ebp + 0x54]
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x50]
jl 0x44c9c9
jmp 0x44ca11
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
sub ebx, dword [ebp + 0x54]
cmp ebx, dword [ebp + 0x48]
jae 0x44c9f0
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp + 0x58]
inc ebx
mov dword [ebp + 0x48], edx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov al, byte [eax + ecx]
mov ecx, dword [ebp + 0x48]
test al, cl
je 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44ca1b
jmp 0x44cecf
cmp ecx, eax
mov dword [ebp + 0x48], ebx
mov dword [ebp + 0x70], ecx
jge 0x44cac0
cmp ebx, dword [esi + 0x3c]
jae 0x44cadf
movzx eax, byte [ebx]
mov ecx, eax
xor edx, edx
and ecx, 7
inc edx
shl edx, cl
mov ecx, dword [ebp + 0x58]
mov dword [ebp + 0x54], edx
cdq
and edx, 7
add eax, edx
sar eax, 3
mov al, byte [eax + ecx]
mov ecx, dword [ebp + 0x54]
test al, cl
je 0x44cadf
inc ebx
inc dword [ebp + 0x70]
mov eax, dword [ebp + 0x70]
cmp eax, dword [ebp + 0x50]
jl 0x44ca87
jmp 0x44cadf
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
dec ebx
test eax, eax
jne 0x44cecf
cmp ebx, dword [ebp + 0x48]
jae 0x44cac0
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp + 0x54], eax
jne 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44cae9
jmp 0x44cecf
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
dec ebx
test eax, eax
jne 0x44cecf
cmp ebx, dword [ebp + 0x58]
jae 0x44cb34
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp + 0x54], eax
jne 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44cb5d
jmp 0x44cecf
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
dec ebx
test eax, eax
jne 0x44cecf
cmp ebx, dword [ebp + 0x58]
jae 0x44cba1
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [esi + 0x14]
movzx eax, byte [eax + ecx]
inc ebx
cmp dword [ebp + 0x54], eax
je 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44cbca
jmp 0x44cecf
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
dec ebx
cmp ebx, dword [ebp + 0x58]
jae 0x44cc15
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
inc ebx
cmp dword [ebp + 0x54], eax
je 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44cc3e
jmp 0x44cecf
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
jne 0x44cecf
dec ebx
cmp ebx, dword [ebp + 0x58]
jae 0x44cc82
jmp 0x44cec8
mov eax, dword [ebp + 0x50]
cmp dword [ebp + 0x70], eax
jge 0x44cec8
cmp ebx, dword [esi + 0x3c]
jae 0x44cec8
movzx eax, byte [ebx]
mov ecx, dword [ebp + 0x58]
inc ebx
sub ecx, 5
je 0x44cd1c
dec ecx
je 0x44cd13
dec ecx
je 0x44cd0a
dec ecx
je 0x44cd01
dec ecx
je 0x44ccf8
dec ecx
je 0x44ccef
dec ecx
jne 0x44cd29
test byte [ebp + 0x74], 4
jne 0x44cd29
cmp eax, 0xa
je 0x44cec8
jmp 0x44cd29
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 0x10
jmp 0x44cce7
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 0x10
jmp 0x44cd23
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 1
jmp 0x44cce7
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 1
jmp 0x44cd23
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 4
jmp 0x44cce7
mov ecx, dword [esi + 0x18]
test byte [eax + ecx], 4
jne 0x44cec8
inc dword [ebp + 0x70]
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
test eax, eax
je 0x44ccab
jmp 0x44cecf
mov edx, dword [ebp + 0x58]
add edx, 0xfffffffb
mov dword [ebp + 0x48], ebx
cmp edx, 7
ja case.default.0x44cd61
jmp dword [edx*4 + 0x44cffa]
test byte [ebp + 0x74], 4
jne case.0x44cd61.12
cmp ecx, eax
jge case.default.0x44cd61
mov edx, dword [esi + 0x3c]
cmp ebx, edx
jae 0x44cec3
cmp byte [ebx], 0xa
je 0x44cec3
inc ebx
inc ecx
cmp ecx, eax
jl 0x44cd79
jmp 0x44cec3
sub eax, ecx
mov ecx, dword [esi + 0x3c]
sub ecx, ebx
cmp eax, ecx
jle 0x44cda2
mov eax, ecx
add ebx, eax
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 4
jne 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44cdb4
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 4
je 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44cde6
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 1
jne 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44ce18
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 1
je 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44ce46
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 0x10
jne 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44ce69
jmp 0x44cec3
cmp ecx, eax
mov dword [ebp + 0x70], ecx
jge case.default.0x44cd61
cmp ebx, dword [esi + 0x3c]
jae 0x44cec3
movzx ecx, byte [ebx]
mov edx, dword [esi + 0x18]
test byte [ecx + edx], 0x10
je 0x44cec3
inc ebx
inc dword [ebp + 0x70]
cmp dword [ebp + 0x70], eax
jl 0x44ce8c
jmp 0x44cec3
push 0
push dword [ebp + 0x78]
push dword [ebp + 0x74]
push esi
push dword [ebp + 0x6c]
push edi
push ebx
call fcn.0044b7d2
add esp, 0x1c
dec ebx
test eax, eax
jne 0x44cecf
cmp ebx, dword [ebp + 0x48]
jae case.default.0x44cd61
xor eax, eax
jmp 0x44cecf
push 0xfffffffffffffffb
pop eax
pop edi
pop ebx
pop esi
add ebp, 0x5c
leave
ret