Function at 0x44acf3
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1830
call fcn.00457ac0
push ebx
push esi
push edi
xor ebx, ebx
cmp dword [ebp + 0xc], ebx
mov edi, ecx
mov dword [ebp - 0xc], edi
jne 0x44ad1d
cmp byte [ebp + 0x10], 0xff
jne 0x44ad1d
mov byte [ebp + 0x10], bl
mov byte [ebp - 0x1a], bl
jmp 0x44ad27
cmp byte [ebp + 0x10], 0
mov byte [ebp - 0x1a], 1
jne 0x44ad59
mov dword [ebp - 0x20], ebx
push 0x20
call fcn.0044e0a3
test eax, eax
pop ecx
je 0x44b439
push dword [ebp + 0x10]
xor ecx, ecx
mov cx, word [edi + 0x48]
push ebx
push dword [ebp + 8]
push dword [edi + 0x4c]
push ecx
mov ecx, eax
call fcn.0044f2f6
mov esi, eax
jmp 0x44b43b
movzx esi, byte [ebp + 0x10]
mov eax, esi
shl eax, 4
push eax
mov dword [ebp - 0x28], esi
call fcn.0044e0a3
mov ebx, eax
test ebx, ebx
pop ecx
mov dword [ebp - 0x20], ebx
jne 0x44ad84
push 0x4595d8
push str.Out_of_memory.
jmp 0x44ba6f
and dword [ebp - 0x14], 0
test esi, esi
jle 0x44ad2a
mov eax, dword [ebp + 0x14]
test eax, eax
mov ecx, dword [ebp - 0x14]
mov edi, dword [ebp + 0xc]
mov esi, dword [edi + ecx*4]
je 0x44ada4
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x10], eax
jmp 0x44ada8
and dword [ebp - 0x10], 0
mov ebx, ecx
shl ebx, 4
add ebx, dword [ebp - 0x20]
cmp byte [ebp + 8], 0x2b
mov byte [ebx + 1], 0
jne 0x44ae13
cmp ecx, 1
jne 0x44aded
push esi
call fcn.00416fa6
pop ecx
mov dword [ebp - 0x30], eax
push dword [ebp - 0x14]
push dword [ebp + 8]
call fcn.00446d05
test al, al
pop ecx
pop ecx
mov byte [ebx], al
je 0x44aeaa
mov cl, byte [esi]
test cl, cl
jne 0x44ae3b
mov byte [ebx], cl
jmp 0x44aee5
jle 0x44adc9
mov eax, dword [ebp - 0x30]
test eax, eax
jl 0x44ae05
cmp eax, 1
jle 0x44adc9
cmp eax, 2
jle 0x44ae05
cmp eax, 5
jle 0x44adc9
push dword [ebp - 0x10]
push esi
call fcn.0044c814
pop ecx
pop ecx
mov byte [ebx + 1], al
cmp byte [ebp + 8], 0x68
jne 0x44adc9
cmp dword [ebp - 0x14], 1
jne 0x44adc9
mov eax, dword [edi]
test eax, eax
je 0x44adc9
push str.Parse
push eax
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
jne 0x44adc9
mov byte [ebx], 1
jmp 0x44ade0
mov edx, dword [ebp - 0x10]
xor edi, edi
mov eax, esi
sub edx, esi
cmp cl, byte [0x464091]
jne 0x44ae58
cmp dword [ebp - 0x10], 0
je 0x44ae60
cmp byte [eax + edx], 0
je 0x44ae60
inc edi
inc eax
mov cl, byte [eax]
test cl, cl
jne 0x44ae44
cmp byte [edi + esi], 0
jne 0x44aee5
mov ecx, dword [ebp - 0xc]
xor edi, edi
push edi
push edi
push edi
push esi
call fcn.0040bf2a
cmp eax, edi
je 0x44b73d
cmp byte [ebx], 2
jne 0x44ae97
mov cl, byte [eax + 0x17]
test cl, cl
jne 0x44ae8e
mov ecx, dword [eax + 0xc]
mov cl, byte [ecx + 0x17]
cmp cl, 2
ja 0x44b401
mov dword [ebx + 4], 0x4595d8
mov word [ebx + 2], di
mov dword [ebx + 8], eax
jmp 0x44b3e7
mov al, byte [esi]
cmp al, byte [0x464091]
jne 0x44aee5
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x44aec0
cmp byte [eax], 0
jne 0x44aee5
mov al, byte [esi + 1]
cmp al, 0x20
je 0x44aecb
cmp al, 9
jne 0x44aee5
inc esi
inc esi
cmp dword [ebp - 0x10], 0
mov byte [ebx + 1], 1
je 0x44aedb
add dword [ebp - 0x10], 2
cmp byte [ebp + 8], 1
jne 0x44aee5
mov byte [ebp + 8], 2
push esi
call fcn.00457520
mov word [ebx + 2], ax
movzx eax, ax
push eax
push esi
call fcn.0044e11a
add esp, 0xc
test eax, eax
mov dword [ebx + 4], eax
je 0x44b73d
movzx ecx, byte [ebp + 8]
and dword [ebp - 0x18], 0
imul ecx, ecx, 0xe
add ecx, 0x464127
je 0x44af8a
mov edi, dword [ebp - 0x14]
lea esi, [edi + 1]
jmp 0x44af2a
movzx edx, dl
cmp edx, esi
je 0x44af32
inc ecx
mov dl, byte [ecx]
test dl, dl
jne 0x44af22
jmp 0x44af8a
cmp byte [ebp + 8], 0x7d
jne 0x44af56
cmp edi, 1
jle 0x44af50
push str.default
push eax
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
je 0x44af8a
jmp 0x44af62
cmp byte [ebp + 0x10], 2
ja 0x44af8a
cmp byte [ebp + 8], 2
je 0x44af86
cmp byte [ebp + 8], 0x69
je 0x44af86
mov esi, dword [ebx + 4]
push str.__t____:____
push esi
call fcn.0043956b
test eax, eax
pop ecx
pop ecx
jne 0x44af86
push dword [ebp - 0x10]
push esi
call fcn.0044c814
pop ecx
pop ecx
mov byte [ebx + 1], al
jmp 0x44af8a
mov byte [ebx + 1], 1
cmp byte [ebx + 1], 0
je 0x44b384
push 0
push 1
push 1
push 1
push dword [ebx + 4]
call fcn.00401fec
add esp, 0x14
test eax, eax
je 0x44afaf
mov byte [ebx + 1], 0
cmp byte [ebx + 1], 0
je 0x44b384
mov esi, dword [ebx + 4]
mov ecx, esi
mov al, byte [ecx]
xor dl, dl
xor edi, edi
test al, al
je 0x44b002
movsx eax, al
sub eax, 0x22
je 0x44afee
sub eax, 6
je 0x44afe7
dec eax
jne 0x44aff3
test dl, dl
jne 0x44aff3
test edi, edi
je 0x44b40f
dec edi
jmp 0x44aff3
test dl, dl
jne 0x44aff3
inc edi
jmp 0x44aff3
test dl, dl
sete dl
inc ecx
mov al, byte [ecx]
test al, al
jne 0x44afc8
test edi, edi
jne 0x44b417
cmp byte [esi], 0
je 0x44b3e3
cmp byte [esi], 0x2e
jne 0x44b018
cmp byte [esi + 1], 0x3d
jne 0x44b018
inc esi
inc esi
cmp byte [esi], 0
je 0x44b321
movsx eax, byte [esi]
push eax
push 0x45c790
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x44b03b
inc esi
cmp byte [esi], 0
jne 0x44b021
mov al, byte [esi]
test al, al
je 0x44b321
cmp al, 0x22
jne 0x44b06a
lea eax, [esi + 1]
mov cl, byte [eax]
test cl, cl
je 0x44b421
cmp cl, 0x22
jne 0x44b067
inc eax
cmp byte [eax], cl
mov dword [ebp - 8], eax
jne 0x44b315
inc eax
jmp 0x44b04c
lea edi, [esi + 1]
mov eax, edi
mov dword [ebp - 8], eax
jmp 0x44b07a
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
movsx eax, byte [eax]
push eax
push 0x45c790
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x44b074
mov eax, dword [ebp - 8]
cmp byte [eax], 0x3d
jne 0x44b09f
dec eax
cmp byte [eax], 0x2e
jne 0x44b09f
mov dword [ebp - 8], eax
cmp byte [esi], 0x2e
jne 0x44b0bc
movsx eax, byte [edi]
push eax
push 0x45ce84
call fcn.00457650
test eax, eax
pop ecx
pop ecx
jne 0x44b315
mov eax, dword [ebp - 8]
sub eax, esi
cmp eax, 4
mov dword [ebp - 0x24], eax
jae 0x44b127
cmp eax, 1
jbe 0x44b127
cmp eax, 2
mov al, byte [esi]
jne 0x44b0f2
cmp al, 0x6f
je 0x44b0dd
cmp al, 0x4f
jne 0x44b127
mov al, byte [edi]
cmp al, 0x72
je 0x44b0e7
cmp al, 0x52
jne 0x44b127
mov byte [esi], 0x7c
mov byte [edi], 0x7c
jmp 0x44b315
cmp al, 0x41
je 0x44b1a1
cmp al, 0x4e
je 0x44b10a
cmp al, 0x61
je 0x44b1a1
cmp al, 0x6e
jne 0x44b127
mov al, byte [edi]
cmp al, 0x6f
je 0x44b114
cmp al, 0x4f
jne 0x44b127
mov al, byte [esi + 2]
cmp al, 0x74
je 0x44b315
cmp al, 0x54
je 0x44b315
mov eax, dword [ebp - 8]
mov cl, byte [eax]
push 0x45ce7c
push esi
mov byte [ebp - 1], cl
mov byte [eax], 0
call fcn.0043956b
test eax, eax
pop ecx
pop ecx
jne 0x44b429
push eax
push 1
push eax
push 1
push esi
call fcn.00401fec
add esp, 0x14
test eax, eax
jne 0x44b30d
cmp byte [esi], 0x3f
jne 0x44b16b
cmp byte [edi], al
je 0x44b30d
movsx eax, byte [0x464091]
cmp byte [ebp - 1], 0x28
push eax
push esi
sete byte [ebp - 0x19]
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x44b263
cmp dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
je 0x44b1cd
mov eax, esi
sub eax, dword [ebx + 4]
add eax, dword [ebp - 0x10]
jmp 0x44b1cf
mov al, byte [edi]
cmp al, 0x6e
je 0x44b1af
cmp al, 0x4e
jne 0x44b127
mov al, byte [esi + 2]
cmp al, 0x64
je 0x44b1be
cmp al, 0x44
jne 0x44b127
mov byte [esi], 0x26
mov byte [edi], 0x26
mov byte [esi + 2], 0x20
jmp 0x44b315
xor eax, eax
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x1830]
push ecx
mov ecx, dword [ebp - 0xc]
push eax
push esi
call fcn.0044c954
test eax, eax
je 0x44b73d
cmp byte [ebp - 0x19], 0
je 0x44b30d
mov eax, dword [ebp - 8]
and dword [ebp - 0x24], 0
inc eax
push eax
call fcn.00401ed8
mov esi, eax
pop ecx
mov cl, byte [esi]
cmp cl, 0x29
je 0x44b24e
xor edi, edi
xor al, al
inc edi
mov edx, edi
jmp 0x44b248
test edi, edi
je 0x44b251
cmp cl, 0x22
jne 0x44b225
test al, al
sete al
test al, al
jne 0x44b245
movsx ecx, cl
sub ecx, 0x28
je 0x44b244
dec ecx
je 0x44b241
sub ecx, 3
jne 0x44b245
cmp edi, 1
jne 0x44b245
inc edx
jmp 0x44b245
dec edi
jmp 0x44b245
inc edi
inc esi
mov cl, byte [esi]
test cl, cl
jne 0x44b217
jmp 0x44b251
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2c]
lea eax, [eax + eax*2]
mov byte [ebp + eax*4 - 0x1827], dl
jmp 0x44b30d
cmp dword [ebp - 0x18], 0x200
jge 0x44b431
mov edi, dword [ebp - 0x18]
mov ax, word [ebp - 0x24]
lea edi, [edi + edi*2]
shl edi, 2
mov dword [ebp + edi - 0x1830], esi
mov word [ebp + edi - 0x1826], ax
mov al, byte [ebp - 0x19]
test al, al
mov byte [ebp + edi - 0x1828], al
je 0x44b2a4
and dword [ebp + edi - 0x182c], 0
jmp 0x44b30a
mov eax, dword [ebp - 8]
movsx eax, byte [eax - 1]
push eax
call fcn.0044234f
cmp eax, 0x45
pop ecx
jne 0x44b2eb
cmp byte [ebp - 1], 0x2b
je 0x44b2c3
cmp byte [ebp - 1], 0x2d
jne 0x44b2eb
push 0x2e
push esi
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x44b2eb
mov al, byte [ebp - 1]
mov ecx, dword [ebp - 8]
mov byte [ecx], al
inc dword [ebp - 8]
mov eax, dword [ebp - 8]
mov al, byte [eax]
cmp al, 0x30
jl 0x44b315
cmp al, 0x39
jle 0x44b2d9
jmp 0x44b315
mov ecx, dword [ebp - 0xc]
push 0
push 0
push dword [ebp - 0x24]
push esi
call fcn.0040bf2a
test eax, eax
mov dword [ebp + edi - 0x182c], eax
je 0x44b73d
inc dword [ebp - 0x18]
mov al, byte [ebp - 1]
mov ecx, dword [ebp - 8]
mov byte [ecx], al
mov esi, dword [ebp - 8]
cmp byte [esi], 0
jne 0x44b00b
cmp dword [ebp - 0x18], 1
jne 0x44b346
push 0
push 0
push dword [ebx + 4]
call fcn.0044fcfc
add esp, 0xc
test eax, eax
je 0x44b350
cmp byte [ebp + 8], 0x69
je 0x44b3ab
mov byte [ebx + 1], 0
jmp 0x44b3ab
cmp dword [ebp - 0x18], 0
je 0x44b3e3
push 0x45c790
push dword [ebx + 4]
call fcn.0043956b
test eax, eax
pop ecx
pop ecx
jne 0x44b3a5
cmp byte [ebp - 0x1828], al
jne 0x44b3a5
mov eax, dword [ebp - 0x1830]
mov al, byte [eax]
cmp al, byte [0x464091]
jne 0x44b3a5
mov byte [ebx + 1], 0
mov byte [ebx], 1
jmp 0x44b3a5
mov ecx, dword [ebp - 0xc]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1830]
push eax
push dword [ebp - 0x10]
push dword [ebx + 4]
call fcn.0044c954
test eax, eax
je 0x44b73d
cmp dword [ebp - 0x18], 0
je 0x44b3e3
mov esi, dword [ebp - 0x18]
lea esi, [esi + esi*2]
shl esi, 2
lea eax, [esi + 0xc]
push eax
call fcn.0044e0a3
test eax, eax
pop ecx
mov dword [ebx + 8], eax
je 0x44b594
push esi
lea ecx, [ebp - 0x1830]
push ecx
push eax
call fcn.00456f20
mov eax, dword [ebx + 8]
add esp, 0xc
and dword [esi + eax], 0
jmp 0x44b3e7
and dword [ebx + 8], 0
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x28]
jl 0x44ad8c
mov edi, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x20]
jmp 0x44ad2a
push esi
push str.Not_allowed_as_an_output_variable.
mov ecx, dword [ebp - 0xc]
jmp 0x44ba71
push ecx
push 0x45c748
jmp 0x44b407
push dword [ebx + 4]
push str.Missing____
jmp 0x44b407
push esi
push str.Missing_close_quote
jmp 0x44b407
push eax
push str.The_leftmost_character_above_is_illegal_in_an_expression.
jmp 0x44b407
push esi
push str.Too_many_var_func_refs.
jmp 0x44b407
xor esi, esi
test esi, esi
je 0x44ad75
mov eax, dword [edi + 4]
mov dword [esi + 0x10], eax
cmp dword [edi], 0
jne 0x44b452
mov dword [edi], esi
jmp 0x44b458
mov eax, dword [edi + 4]
mov dword [eax + 0x14], esi
mov cl, byte [ebp + 0x10]
test cl, cl
mov dword [edi + 4], esi
mov dword [edi + 0x23c], esi
jbe 0x44b475
mov eax, dword [ebx + 4]
mov dword [ebp + 0x14], eax
mov eax, 0x4595d8
jmp 0x44b47d
mov eax, 0x4595d8
mov dword [ebp + 0x14], eax
cmp cl, 1
jbe 0x44b48a
mov edx, dword [ebx + 0x14]
mov dword [ebp + 0xc], edx
jmp 0x44b48d
mov dword [ebp + 0xc], eax
cmp cl, 2
jbe 0x44b495
mov eax, dword [ebx + 0x24]
cmp cl, 3
mov dword [ebp - 0x14], eax
jbe 0x44b4a5
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax + 0x34]
jmp 0x44b4aa
mov ebx, 0x4595d8
movzx eax, byte [ebp + 8]
cmp eax, 0x18
jg 0x44b5a3
cmp eax, 0x13
jge case.0x44b4cd.1
dec eax
cmp eax, 0x10
ja case.0x44b4cd.3
movzx eax, byte [eax + 0x44ba88]
jmp dword [eax*4 + 0x44ba78]
cmp byte [ebp + 0x10], 2
jae case.0x44b4cd.1
push 0x4595d8
push str.Parameter_2_required
jmp 0x44ba6f
movzx eax, byte [ebp + 0x10]
xor ecx, ecx
inc ecx
cmp eax, ecx
mov dword [ebp + 0x14], ecx
mov dword [ebp - 0x28], eax
jle case.0x44b4cd.3
mov ebx, dword [ebp - 0x20]
add ebx, 0x14
mov edi, dword [ebx]
cmp byte [edi], 0
je 0x44b576
push dword [ebp + 0x14]
mov ecx, esi
call fcn.00443ec4
test al, al
jne 0x44b576
cmp byte [ebx - 3], al
jne 0x44b576
xor eax, eax
push eax
push eax
push eax
push 1
push edi
call fcn.00401fec
add esp, 0x14
test eax, eax
je 0x44b576
cmp byte [ebp + 8], 1
je 0x44b53e
cmp byte [ebp + 8], 2
jne 0x44b555
mov eax, dword [ebp + 0xc]
mov al, byte [eax]
cmp al, 0x30
je 0x44b576
cmp al, 0x2b
je 0x44b576
mov eax, dword [ebp - 0x20]
cmp word [eax + 0x12], 0x14
ja 0x44b576
push 8
call fcn.0044e0a3
test eax, eax
pop ecx
mov dword [ebx + 8], eax
je 0x44b594
push dword [ebx]
call fcn.00401f32
pop ecx
mov ecx, dword [ebx + 8]
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x44b57a
and dword [ebx + 8], 0
inc dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
add ebx, 0x10
cmp eax, dword [ebp - 0x28]
jl 0x44b504
mov edi, dword [ebp - 0xc]
jmp case.0x44b4cd.3
push 0x4595d8
push str.Out_of_memory.
jmp 0x44b407
cmp eax, 0x68
je 0x44b7fb
cmp eax, 0x69
je 0x44b7ef
cmp eax, 0x8c
jle case.0x44b4cd.3
cmp eax, 0x90
jle 0x44b71d
cmp eax, 0xbf
je 0x44b5e9
cmp eax, 0xd3
jne case.0x44b4cd.3
mov byte [0x46639c], 1
jmp case.0x44b4cd.3
cmp byte [ebp + 0x10], 1
jb case.0x44b4cd.3
push 0
mov ecx, esi
call fcn.00443ec4
test al, al
je 0x44b612
xor eax, eax
inc eax
mov dword [0x4663a8], eax
mov dword [0x4663ac], eax
jmp case.0x44b4cd.3
mov ebx, dword [ebp + 0x14]
push 5
push str.Float
push ebx
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x44b694
push str.Fast
add ebx, 5
push ebx
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
je 0x44b647
mov dword [0x4663ac], 1
cmp byte [ebp + 0x10], 1
jbe case.0x44b4cd.3
push 1
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
push 1
push 1
push 0
push 1
push dword [ebp + 0xc]
call fcn.00401fec
add esp, 0x14
test eax, eax
je 0x44b895
push dword [ebp + 0xc]
call fcn.00457520
cmp eax, 0x1e
pop ecx
jb case.0x44b4cd.3
jmp 0x44b895
push 7
push str.Integer
push ebx
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x44b712
push str.Fast
add ebx, 7
push ebx
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
je 0x44b6c6
mov dword [0x4663a8], 1
cmp byte [ebp + 0x10], 1
jbe case.0x44b4cd.3
push 1
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
mov eax, dword [ebp + 0xc]
movsx eax, byte [eax]
push eax
call fcn.0044234f
cmp eax, 0x48
pop ecx
je case.0x44b4cd.3
mov eax, dword [ebp + 0xc]
movsx eax, byte [eax]
push eax
call fcn.0044234f
cmp eax, 0x44
pop ecx
je case.0x44b4cd.3
jmp 0x44b895
push ebx
push str.Parameter_1_invalid
jmp 0x44ba6f
push 0
mov ecx, esi
call fcn.00443ec4
test al, al
jne 0x44b744
push 1
push dword [ebp + 0x14]
mov ecx, edi
call fcn.0044f412
test eax, eax
mov dword [esi + 0xc], eax
jne 0x44b744
xor eax, eax
jmp 0x44ba46
cmp byte [ebp + 8], 0x8e
je 0x44b7ae
cmp byte [ebp + 8], 0x8f
je 0x44b7ae
cmp byte [ebp + 8], 0x90
jne case.0x44b4cd.3
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
je case.0x44b4cd.3
push 1
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
mov ebx, dword [ebp + 0xc]
push ebx
call fcn.00457520
cmp eax, 1
pop ecx
ja 0x44b895
movsx eax, byte [ebx]
push eax
call fcn.0044234f
push eax
push 0x45ce1c
call fcn.00457650
add esp, 0xc
test eax, eax
jne case.0x44b4cd.3
jmp 0x44b895
mov eax, dword [ebp + 0xc]
cmp byte [eax], 0
je case.0x44b4cd.3
push 1
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
mov ebx, dword [ebp + 0xc]
push ebx
call fcn.00457520
cmp eax, 1
pop ecx
ja 0x44b895
movsx eax, byte [ebx]
push eax
call fcn.0044234f
cmp eax, 0x52
jmp 0x44b706
mov dword [esi + 0xc], 7
jmp case.0x44b4cd.3
movzx eax, byte [ebp + 0x10]
sub eax, 0
je case.0x44b4cd.8
dec eax
mov ecx, esi
je 0x44b940
push 0
call fcn.00443ec4
test al, al
jne 0x44b981
push str.Read
push dword [ebp + 0x14]
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
jne 0x44b83f
mov dword [esi + 0xc], 5
jmp case.0x44b4cd.3
push str.Parse
push dword [ebp + 0x14]
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
jne 0x44b85e
mov dword [esi + 0xc], 6
jmp case.0x44b4cd.3
push 0
push dword [ebp + 0x14]
call fcn.00419f17
neg eax
sbb eax, eax
neg eax
add eax, 3
cmp eax, 3
pop ecx
pop ecx
mov dword [esi + 0xc], eax
jne 0x44b8e8
push 1
mov ecx, esi
call fcn.00443ec4
test al, al
jne 0x44b8a2
push dword [ebp + 0xc]
call fcn.00416a1a
test eax, eax
pop ecx
jne 0x44b8a2
push dword [ebp + 0xc]
push str.Parameter_2_invalid
jmp 0x44ba6f
mov ebx, dword [ebp - 0x14]
cmp byte [ebx], 0
je case.0x44b4cd.3
push 2
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
push ebx
call fcn.00457520
cmp eax, 1
pop ecx
ja 0x44b8dd
mov al, byte [ebx]
cmp al, 0x30
je case.0x44b4cd.3
cmp al, 0x31
je case.0x44b4cd.3
push ebx
push str.Parameter_3_invalid
jmp 0x44ba6f
cmp byte [ebp + 0x10], 2
jbe 0x44b90d
push 2
mov ecx, esi
call fcn.00443ec4
test al, al
jne 0x44b90d
push dword [ebp - 0x14]
call fcn.00416a1a
test eax, eax
pop ecx
jne 0x44b90d
push dword [ebp - 0x14]
jmp 0x44b8de
cmp byte [ebx], 0
je case.0x44b4cd.3
push 3
mov ecx, esi
call fcn.00443ec4
test al, al
jne case.0x44b4cd.3
push ebx
call fcn.00457520
cmp eax, 1
pop ecx
ja 0x44b935
mov al, byte [ebx]
cmp al, 0x30
je case.0x44b4cd.3
cmp al, 0x31
je case.0x44b4cd.3
push ebx
push str.Parameter_4_invalid
jmp 0x44ba6f
xor ebx, ebx
push ebx
call fcn.00443ec4
test al, al
jne 0x44b981
mov eax, dword [ebp - 0x20]
cmp byte [eax + 1], bl
jne 0x44b981
push ebx
push ebx
push 1
push ebx
push dword [ebp + 0x14]
call fcn.00401fec
add esp, 0x14
test eax, eax
jne case.0x44b4cd.8
push ebx
push dword [ebp + 0x14]
call fcn.00419f17
neg eax
sbb eax, eax
neg eax
pop ecx
add eax, 3
pop ecx
mov dword [esi + 0xc], eax
jmp case.0x44b4cd.3
mov dword [esi + 0xc], 1
jmp case.0x44b4cd.3
mov dword [esi + 0xc], 2
cmp byte [edi + 0x3c], 0
je 0x44b9b6
mov eax, dword [edi + 0x18]
mov dword [eax + 4], esi
mov byte [edi + 0x3c], 0
mov eax, dword [0x464108]
mov eax, dword [eax + 0x94]
cmp byte [eax + 0x30], 0
jne 0x44b9b6
mov byte [eax + 0x30], 2
cmp byte [ebp + 8], 0x6c
jne 0x44b9d9
mov eax, dword [edi + 0x18]
inc dword [edi + 0x38]
test eax, eax
je 0x44ba0e
cmp dword [eax + 4], 0
jne 0x44ba0e
mov dword [esi + 0xc], 1
mov byte [edi + 0x3c], 1
jmp 0x44ba0e
cmp byte [ebp + 8], 0x6d
jne 0x44ba0e
dec dword [edi + 0x38]
mov edx, dword [0x464108]
mov eax, dword [edi + 0x38]
xor ecx, ecx
cmp dword [edx + 0x94], ecx
je 0x44ba0e
cmp eax, ecx
jne 0x44ba0e
mov dword [esi + 0xc], 1
mov eax, dword [0x464108]
mov dword [eax + 0x94], ecx
mov dword [edi + 0x40], ecx
cmp byte [ebp - 0x1a], 0
je 0x44ba40
mov eax, dword [edi + 0x10]
jmp 0x44ba3c
cmp dword [eax + 4], 0
jne 0x44ba40
mov cl, byte [esi]
cmp cl, 0x6c
jne 0x44ba2c
cmp dword [esi + 0xc], 0
jne 0x44ba4d
cmp cl, 9
je 0x44ba59
cmp cl, 0x6d
je 0x44ba65
mov dword [eax + 4], esi
mov eax, dword [eax + 8]
test eax, eax
jne 0x44ba19
inc dword [edi + 8]
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret 0x10
push 0x4595d8
push str.A_label_must_not_point_to_a_function.
jmp 0x44ba6f
push 0x4595d8
push str.A_label_must_not_point_to_an_ELSE.
jmp 0x44ba6f
push 0x4595d8
push str.A_label_must_not_point_to_the_end_of_a_block._For_loops__use_Continue_vs._Goto.
mov ecx, edi
call fcn.0044bc5a
jmp 0x44ba46