Function at 0x43eda0
Capabilities:
Parse credit card information

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0xacc
push ebx
mov bl, byte [ebp + 0x74]
push esi
push edi
mov edi, dword [ebp + 0x70]
mov esi, ecx
mov ecx, edi
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x64], ebx
mov byte [ebp + 0x62], bl
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43edc4
sub ecx, edx
sar ecx, 1
mov dword [ebp + 0x44], ecx
test bl, bl
je 0x43ee88
xor eax, eax
mov ebx, edi
mov word [ebp - 0x264], ax
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x63], al
mov eax, dword [ebp + 0x64]
cmp al, 0xa
jne 0x43ee48
mov edi, ebx
test ebx, ebx
je 0x43ee48
movzx eax, word [ebx]
test ax, ax
je 0x43ee45
mov esi, eax
nop word [eax + eax]
mov ecx, str.__t_____:________n.
mov edx, 0x20
nop word [eax + eax]
cmp si, dx
je 0x43f986
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x43ee20
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x43ee10
mov eax, dword [ebp + 0x64]
mov cl, byte [ebp + 0x63]
movzx edi, al
mov dl, cl
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
mov edx, dword [ebp + 0x44]
lea eax, [edi - 9]
mov byte [ebp + 0x62], cl
mov dword [ebp + 0x54], 0
cmp eax, 0x12
ja case.0x43ee81.13
movzx eax, byte [eax + 0x440248]
mov dl, cl
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
mov edx, dword [ebp + 0x44]
jmp dword [eax*4 + 0x440234]
push 6
push str.global
push edi
call fcn.0049f9c2
add esp, 0xc
test eax, eax
jne 0x43eea1
lea ebx, [eax + 0x41]
jmp 0x43eeda
push 5
push str.local
push edi
call fcn.0049f9c2
add esp, 0xc
test eax, eax
jne 0x43eebd
lea ebx, [eax + 0x42]
lea eax, [ebx - 0x38]
jmp 0x43eedf
push 6
push 0x4d2154
push edi
call fcn.0049f9c2
add esp, 0xc
test eax, eax
jne 0x43f340
mov ebx, 0x62
mov eax, 0xc
add edi, eax
mov dword [ebp + 0x50], ebx
movzx eax, word [edi]
test ax, ax
je 0x43f2ef
cmp eax, 0x20
je 0x43ef00
cmp eax, 9
jne 0x43f339
nop
cmp ax, 0x20
je 0x43ef0c
cmp ax, 9
jne 0x43ef15
movzx eax, word [edi + 2]
add edi, 2
jmp 0x43ef00
test ax, ax
je 0x43f2ef
cmp ax, 0x7f
ja 0x43ef3e
movzx eax, ax
push eax
call fcn.004a3b30
add esp, 4
test eax, eax
jne 0x43ef3e
cmp word [edi], 0x5f
jne 0x43f339
mov eax, dword [0x4e4788]
cmp dword [eax + 0x18], 0
jne 0x43ef52
test bl, 2
jne 0x43f31a
cmp word [edi], 0
mov eax, dword [esi + 0x48]
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x73], 0
je 0x43f305
mov eax, ebx
and eax, 1
mov dword [ebp + 0x44], eax
nop
lea esi, [edi + 2]
movzx eax, word [esi]
cmp eax, 0x7f
ja 0x43ef8e
push eax
call fcn.004a3b30
add esp, 4
test eax, eax
jne 0x43ef8e
cmp word [esi], 0x5f
jne 0x43ef93
add esi, 2
jmp 0x43ef73
mov ebx, esi
xor edx, edx
sub ebx, edi
mov dword [ebp + 0x74], edx
sar ebx, 1
cmp dword [ebp + 0x44], edx
je 0x43efbd
push dword [ebp + 0x50]
mov ecx, dword [ebp + 0x58]
push ebx
push edi
call fcn.00443ee0
mov edx, eax
mov dword [ebp + 0x74], edx
test edx, edx
je 0x43f0cf
mov ecx, dword [0x4e4788]
cmp dword [ecx + 0x18], 0
je 0x43f0a0
lea eax, [ebp + 0x78]
mov dword [ebp + 0x78], 1
push eax
lea eax, [ebp + 0x54]
test edx, edx
push eax
lea eax, [ebp + 0x40]
mov ecx, 0x22
push eax
mov eax, dword [ebp + 0x50]
cmovne eax, ecx
mov ecx, dword [ebp + 0x58]
push eax
push ebx
push edi
call fcn.00443f80
mov ecx, eax
test ecx, ecx
jne 0x43f08d
cmp dword [ebp + 0x78], eax
je 0x43f0cf
cmp dword [ebp + 0x74], eax
je 0x43f0b4
mov ebx, dword [ebp + 0x40]
mov edx, dword [ebp + 0x54]
mov dword [ebp + 0x48], edx
mov eax, dword [ebx + 8]
cmp dword [ebx + 4], eax
jne 0x43f056
test eax, eax
je 0x43f02d
add eax, eax
jmp 0x43f032
mov eax, 0x20
mov dword [ebp + 0x3c], eax
shl eax, 2
push eax
push dword [ebx]
call fcn.0049f968
add esp, 8
test eax, eax
je 0x43f263
mov edx, dword [ebp + 0x48]
mov dword [ebx], eax
mov eax, dword [ebp + 0x3c]
mov dword [ebx + 8], eax
mov ecx, dword [ebx + 4]
lea eax, [edx*4]
mov dword [ebp + 0x3c], eax
cmp edx, ecx
je 0x43f07f
mov eax, dword [ebx]
sub ecx, edx
shl ecx, 2
push ecx
lea eax, [eax + edx*4]
push eax
add eax, 4
push eax
call fcn.0049d480
add esp, 0xc
mov eax, dword [ebx]
mov edx, dword [ebp + 0x3c]
mov ecx, dword [ebp + 0x74]
mov dword [edx + eax], ecx
inc dword [ebx + 4]
mov ebx, dword [ebp + 0x58]
movzx eax, byte [ecx + 0x16]
mov edx, dword [ebp + 0x50]
cmp eax, edx
jne 0x43f285
nop
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x20
je 0x43f0af
cmp eax, 9
jne 0x43f0e1
add esi, 2
jmp 0x43f0a0
push dword [ebp + 0x50]
push dword [ebp + 0x54]
push dword [ebp + 0x40]
push ebx
mov ebx, dword [ebp + 0x58]
mov ecx, ebx
push edi
call fcn.004446b0
mov ecx, eax
test ecx, ecx
jne 0x43f090
xor eax, eax
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
test cx, cx
je 0x43f215
cmp ecx, 0x2c
je 0x43f24e
cmp eax, 0x3a
jne 0x43f104
cmp word [esi + 2], 0x3d
jne 0x43f104
add esi, 4
jmp 0x43f168
push eax
push str.__.
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f11d
cmp word [esi + 2], 0x3d
je 0x43f168
movzx eax, word [esi]
push eax
push 0x4d7a50
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f2d1
movzx ecx, word [esi]
cmp word [esi + 2], cx
jne 0x43f2d1
movzx eax, word [esi + 4]
cmp eax, 0x3d
je 0x43f168
cmp ecx, 0x3e
jne 0x43f2d1
cmp eax, ecx
jne 0x43f2d1
cmp word [esi + 6], 0x3d
jne 0x43f2d1
push 0
push 0
mov edx, 0x2c
mov ecx, esi
call fcn.00483ba0
add esp, 8
mov ecx, edi
lea esi, [esi + eax*2]
lea edx, [esi - 2]
call fcn.004138f0
mov ebx, eax
movzx eax, word [ebx + 2]
mov dword [ebp + 0x74], eax
xor eax, eax
mov word [ebx + 2], ax
cmp dword [ebp + 0x5c], eax
je 0x43f1bb
cmp byte [ebp + 0x73], al
jne 0x43f1bb
mov ecx, dword [ebp + 0x58]
push eax
push eax
push eax
push eax
push 3
call fcn.00440300
test eax, eax
je 0x43f0cf
mov byte [ebp + 0x73], 1
cmp dword [ebp + 0x50], 0x62
mov ecx, dword [ebp + 0x58]
setne al
dec al
push 0
and al, 5
push 0
movzx eax, al
push eax
push edi
call fcn.0043eda0
test eax, eax
je 0x43f0cf
mov eax, dword [ebp + 0x74]
mov word [ebx + 2], ax
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x2c
jne 0x43f205
lea edi, [esi + 2]
movzx eax, word [edi]
cmp eax, 0x20
je 0x43f200
cmp eax, 9
jne 0x43f209
add edi, 2
jmp 0x43f1f3
mov edi, esi
mov eax, ecx
movzx eax, ax
test ax, ax
jne 0x43ef70
cmp byte [ebp + 0x73], 0
je 0x43f305
mov ecx, dword [ebp + 0x58]
push 0
push 0
push 0
push 0
push 4
call fcn.00440300
test eax, eax
je 0x43f0cf
mov eax, 1
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
lea edi, [esi + 2]
movzx eax, word [edi]
cmp eax, 0x20
je 0x43f25e
cmp eax, 9
jne 0x43f20c
add edi, 2
jmp 0x43f251
mov ecx, dword [ebp + 0x58]
push 0x4cee30
push str.Out_of_memory.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
test dl, 2
je 0x43f2b3
test dl, 0x20
mov eax, 0x4d2154
mov edx, str.local
push ecx
cmove eax, edx
mov ecx, ebx
push eax
call fcn.0040d900
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push ecx
mov eax, str.global
mov ecx, ebx
push eax
call fcn.0040d900
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov ecx, dword [ebp + 0x58]
push edi
push str.Invalid_variable_declaration.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
cmp byte [esi + 0x50], 0
je 0x43f31a
cmp ebx, 0x42
je 0x43f31a
mov eax, dword [0x4e4788]
mov eax, dword [eax + 0x18]
mov byte [eax + 0x76], bl
mov eax, 1
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push dword [ebp + 0x70]
mov ecx, esi
push str.Unexpected_declaration.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov edi, dword [ebp + 0x70]
nop dword [eax]
movzx eax, word [edi]
cmp eax, 0x7f
ja 0x43f35b
push eax
call fcn.004a3b30
add esp, 4
test eax, eax
jne 0x43f35b
cmp word [edi], 0x5f
jne 0x43f360
add edi, 2
jmp 0x43f340
mov ecx, dword [ebp + 0x70]
mov esi, edi
sub esi, ecx
mov dword [ebp + 0x5c], edi
sar esi, 1
je 0x43f3e0
cmp esi, 0xfd
ja 0x43f3e0
push esi
push ecx
lea eax, [ebp - 0x264]
push eax
call fcn.004aad14
add esp, 0xc
mov ebx, edi
xor eax, eax
mov word [ebp + esi*2 - 0x264], ax
movzx eax, word [ebx]
cmp eax, 0x20
je 0x43f3a0
cmp eax, 9
jne 0x43f3a5
add ebx, 2
jmp 0x43f393
movzx ecx, word [edi]
test cx, cx
je 0x43f3bc
cmp ecx, 0x20
je 0x43f3bc
cmp ecx, 9
je 0x43f3bc
cmp ecx, 0x28
jne 0x43f3d3
cmp eax, 0x3d
je 0x43f3d3
cmp eax, 0x3a
je 0x43f3d3
mov ecx, dword [ebp + 0x70]
mov byte [ebp + 0x4f], 1
mov byte [ebp + 0x63], 0
jmp 0x43f3f4
mov ecx, dword [ebp + 0x70]
mov byte [ebp + 0x4f], 0
mov byte [ebp + 0x63], 0
jmp 0x43f3f4
xor eax, eax
mov ebx, ecx
mov word [ebp - 0x264], ax
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x4f], al
mov byte [ebp + 0x63], al
movzx edi, word [ecx]
cmp edi, 0x22
je 0x43f401
cmp edi, 0x27
jne 0x43f46a
mov eax, dword [ebp + 0x78]
lea ebx, [ecx + 2]
add eax, 2
nop word [eax + eax]
movzx ecx, word [ebx]
cmp cx, di
jne 0x43f445
cmp dword [ebp + 0x78], 0
je 0x43f424
cmp word [eax], 0
jne 0x43f462
test cx, cx
je 0x43f46a
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43f429
cmp eax, 9
je 0x43f429
mov edi, dword [ebp + 0x70]
cmp eax, 0x2e
cmovne ebx, edi
jmp 0x43f46d
test cx, cx
je 0x43f46a
cmp ecx, 0x60
jne 0x43f462
cmp dword [ebp + 0x78], 0
jne 0x43f462
cmp word [ebx + 2], 0
je 0x43f462
add eax, 2
add ebx, 2
add eax, 2
add ebx, 2
jmp 0x43f410
mov edi, dword [ebp + 0x70]
movzx edx, word [ebx]
lea esi, [ebx + 2]
movzx ecx, word [esi]
lea eax, [edx - 0x26]
cmp eax, 0x56
ja case.0x43f489.39
movzx eax, byte [eax + 0x44027c]
jmp dword [eax*4 + 0x44025c]
cmp ecx, 0x3d
jne case.0x43f489.39
cmp word [ebx + 4], 0
sete al
inc al
mov dword [ebp + 0x64], eax
jmp 0x43f4e1
mov edi, dword [ebp + 0x5c]
test edi, edi
jne 0x43f4b4
cmp cx, dx
je 0x43f4bd
cmp ecx, 0x3d
jne 0x43f6b3
mov ebx, dword [ebp + 0x70]
mov al, 2
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
movzx eax, byte [ebp + 0x62]
cmp ecx, 0x3d
mov edx, 2
cmovne edx, eax
mov dword [ebp + 0x64], edx
mov eax, edx
mov byte [ebp + 0x74], al
test al, al
je 0x43f6f5
cmp al, 1
jne 0x43f530
push 0
push 2
mov edx, 0x2c
mov ecx, ebx
call fcn.00483ba0
add esp, 8
cmp word [ebx + eax*2], 0
je 0x43f519
mov al, 2
mov ebx, edi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
mov eax, 0x2c
mov word [ebx], ax
mov eax, 0x20
mov word [esi], ax
mov ebx, edi
jmp 0x43ee45
mov ebx, edi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43edf2
cmp ecx, 0x3d
je case.0x43f489.63
cmp ecx, 0x2f
jne case.0x43f489.39
cmp word [ebx + 4], 0x3d
jmp 0x43f57a
cmp cx, dx
jne case.0x43f489.39
movzx eax, word [ebx + 4]
cmp eax, 0x3d
je case.0x43f489.63
cmp ecx, 0x3e
jne case.0x43f489.39
cmp eax, ecx
jne case.0x43f489.39
cmp word [ebx + 6], 0x3d
jne case.0x43f489.39
mov al, 2
mov ebx, edi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
cmp ecx, 0x3d
jne 0x43f5a3
mov al, 2
mov ebx, edi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
mov edi, esi
movzx eax, word [edi]
cmp eax, 0x7f
ja 0x43f5c2
push eax
call fcn.004a3b30
add esp, 4
test eax, eax
jne 0x43f5c2
movzx eax, word [edi]
cmp eax, 0x5f
jne 0x43f5c7
add edi, 2
jmp 0x43f5a5
cmp eax, 0x28
je 0x43f4bd
cmp eax, 0x25
je 0x43f4bd
cmp edi, esi
je case.0x43f489.39
cmp eax, 0x20
je 0x43f5ef
mov byte [ebp + 0x62], 0
cmp eax, 9
jne 0x43f5f3
mov byte [ebp + 0x62], 1
mov esi, edi
cmp ax, 0x20
je 0x43f601
cmp ax, 9
jne 0x43f60a
movzx eax, word [esi + 2]
add esi, 2
jmp 0x43f5f5
movzx ecx, ax
test ax, ax
je 0x43f692
cmp ax, 0x5b
je 0x43f4bd
cmp word [esi + 2], 0x3d
jne 0x43f63d
push eax
push str.:__.
call fcn.0049d3cf
add esp, 8
test eax, eax
jne 0x43f4bd
movzx eax, word [esi]
mov ecx, eax
cmp word [esi + 2], ax
jne 0x43f692
push eax
push 0x4d7a50
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f665
cmp word [esi + 4], 0x3d
je 0x43f4bd
movzx eax, word [esi]
cmp eax, 0x2b
je 0x43f4bd
cmp eax, 0x2d
je 0x43f4bd
mov ecx, eax
cmp eax, 0x3e
jne 0x43f692
cmp word [esi + 4], ax
jne 0x43f6a5
cmp word [esi + 6], 0x3d
je 0x43f4bd
cmp cx, 0x2e
jne 0x43f6a0
add esi, 2
jmp 0x43f5a3
test cx, cx
je 0x43f6ab
cmp byte [ebp + 0x62], 0
je case.0x43f489.39
mov dword [ebp + 0x5c], edi
jmp 0x43f6c0
mov edi, dword [ebp + 0x5c]
mov eax, dword [ebp + 0x64]
cmp byte [ebp + 0x4f], 0
je 0x43f765
mov eax, 8
mov esi, 0x4e47d0
mov dword [ebp + 0x54], eax
nop dword [eax]
push dword [esi]
lea eax, [ebp - 0x264]
push eax
call fcn.0049f841
add esp, 8
test eax, eax
je 0x43f6fa
inc dword [ebp + 0x54]
add esi, 6
cmp esi, 0x4e4842
jle 0x43f6d0
jmp 0x43f70b
mov edi, dword [ebp + 0x5c]
jmp 0x43f6b6
mov eax, dword [ebp + 0x54]
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
test al, al
jne 0x43edf2
movzx eax, word [edi]
cmp eax, 0x28
je 0x43f76d
mov cx, word [ebp - 0x264]
cmp cx, 0x30
jb 0x43f726
cmp cx, 0x39
jbe 0x43f76d
mov edx, dword [ebp + 0x44]
test ax, ax
mov esi, dword [ebp + 0x70]
mov eax, 0x28
je 0x43f73b
mov word [edi], ax
jmp 0x43f740
mov word [esi + edx*2], ax
inc edx
mov eax, 0x29
mov ebx, esi
mov word [esi + edx*2], ax
inc edx
xor eax, eax
mov dword [ebp + 0x44], edx
mov word [esi + edx*2], ax
mov eax, 2
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
test al, al
jne 0x43edf2
movzx eax, word [ebx]
cmp eax, 0x7b
jne 0x43f824
mov ecx, 8
mov esi, 0x4e47d0
mov dword [ebp + 0x54], ecx
push dword [esi]
lea eax, [ebp - 0x264]
push eax
call fcn.0049f841
add esp, 8
test eax, eax
je 0x43f7ad
inc dword [ebp + 0x54]
add esi, 6
cmp esi, 0x4e4842
jle 0x43f786
xor cl, cl
jmp 0x43f7b0
mov ecx, dword [ebp + 0x54]
movzx eax, cl
add eax, 0xfffffff7
cmp eax, 0x11
ja case.0x43f7c2.11
movzx eax, byte [eax + 0x4402e0]
jmp dword [eax*4 + 0x4402d4]
cmp word [ebx + 2], 0
jne case.0x43f7c2.11
mov al, cl
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
test cl, cl
jne 0x43ee48
movzx eax, word [ebx]
push eax
push str.__t_____:________n._
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f8bf
movzx eax, word [ebx]
cmp eax, 0x2b
je 0x43f80a
cmp eax, 0x2d
jne 0x43f891
cmp word [ebx + 2], ax
jne 0x43f891
mov ebx, dword [ebp + 0x70]
mov al, 2
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
cmp eax, 0x3a
jne case.0x43f7c2.11
lea eax, [ebp - 0x264]
push 0x4d4580
push eax
call fcn.0049f841
add esp, 8
test eax, eax
jne case.0x43f7c2.11
mov esi, dword [ebp + 0x58]
mov ecx, esi
push eax
push eax
push eax
push eax
push 0x1b
call fcn.00440300
test eax, eax
je 0x43f0cf
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43f859
cmp eax, 9
je 0x43f859
test ax, ax
je 0x43f305
push 0
push 0
push 0
push ebx
mov ecx, esi
call fcn.0043eda0
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push 0x3f
push ebx
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f8bf
push 0x3a
push eax
call fcn.0049d3cf
add esp, 8
test eax, eax
je 0x43f8bf
mov ebx, dword [ebp + 0x70]
mov al, 2
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
test edi, edi
je 0x43f8d8
movzx eax, word [edi]
cmp eax, 0x28
je 0x43f974
cmp eax, 0x5b
je 0x43f974
movzx eax, word [ebx]
mov esi, dword [ebp + 0x70]
cmp eax, 0x25
je 0x43f977
cmp word [esi], 0x28
je 0x43f977
cmp eax, 0x3d
jne 0x43f91a
cmp word [ebx + 2], ax
je 0x43f93d
mov ecx, dword [ebp + 0x58]
push esi
push str.Syntax_error._Did_you_mean_to_use__:__
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
cmp eax, 0x2c
jne 0x43f93d
mov ecx, dword [ebp + 0x58]
push esi
push str.Function_calls_require_a_space_or____.__Use_comma_only_between_parameters.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push 0x4d6fd8
push esi
call fcn.0049ddbe
add esp, 8
mov edx, str.This_line_does_not_contain_a_recognized_action.
test eax, eax
mov ecx, str.Invalid_hotkey.
cmove ecx, edx
push esi
push ecx
mov ecx, dword [ebp + 0x58]
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov esi, dword [ebp + 0x70]
mov al, 2
mov ebx, esi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
jmp 0x43ee48
cmp edi, ebx
jbe 0x43ee45
movzx ecx, word [edi]
mov dword [ebp + 0x54], ecx
cmp ecx, 0x20
je 0x43f9a7
cmp ecx, 9
je 0x43f9a7
cmp ecx, 0x2c
jne 0x43ee45
mov edx, dword [ebp + 0x64]
mov eax, edi
movzx esi, cx
nop
mov byte [ebp + 0x62], dl
cmp si, 0x20
je 0x43f9bf
cmp si, 9
jne 0x43f9c8
movzx esi, word [eax + 2]
add eax, 2
jmp 0x43f9b0
mov dword [ebp + 0x40], eax
movzx eax, cx
mov dword [ebp + 0x3c], eax
xor eax, eax
push ebx
push str.Files
mov word [edi], ax
call fcn.0049f841
add esp, 8
test eax, eax
jne 0x43f9fe
mov ecx, dword [ebp + 0x54]
mov al, 0xb
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
movzx eax, cx
mov word [edi], ax
jmp 0x43fa82
push ebx
push 0x4d7bd4
call fcn.0049f841
add esp, 8
test eax, eax
jne 0x43fa23
mov ecx, dword [ebp + 0x54]
mov al, 0xc
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
movzx eax, cx
mov word [edi], ax
jmp 0x43fa82
push ebx
push str.Read
call fcn.0049f841
add esp, 8
test eax, eax
jne 0x43fa48
mov ecx, dword [ebp + 0x54]
mov al, 0xd
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
movzx eax, cx
mov word [edi], ax
jmp 0x43fa82
push ebx
push str.Parse
call fcn.0049f841
add esp, 8
test eax, eax
jne 0x43fa6a
mov al, 0xe
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
mov eax, dword [ebp + 0x3c]
mov word [edi], ax
jmp 0x43fa82
mov ecx, dword [ebp + 0x54]
movzx eax, cx
mov word [edi], ax
mov al, byte [ebp + 0x62]
mov cl, al
mov dword [ebp + 0x64], ecx
mov byte [ebp + 0x74], cl
cmp al, 0xa
je 0x43faa5
mov ebx, dword [ebp + 0x40]
cmp si, 0x2c
jne 0x43ee45
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43fa8f
cmp eax, 9
je 0x43fa8f
jmp 0x43ee45
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x74], al
cmp si, 0x2c
jne 0x43ee48
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Invalid_loop_type.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov esi, ebx
jmp 0x43fadc
mov esi, dword [ebp + 0x5c]
mov al, cl
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
test esi, esi
je 0x43fb82
cmp word [esi], 0x28
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
jne 0x43fb82
mov eax, dword [ebp + 0x70]
lea eax, [eax + edx*2]
movzx edx, word [eax - 2]
add eax, 0xfffffffe
mov ecx, edx
cmp edx, 0x7b
jne 0x43fb47
cmp byte [ebp + 0x64], 0xf
je 0x43fb1e
mov edx, dword [ebp + 0x64]
cmp dl, 0x17
jne 0x43fb47
add eax, 0xfffffffe
mov byte [ebp + 0x63], 1
cmp eax, esi
jbe 0x43fb44
nop dword [eax]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fb3d
cmp ecx, 9
jne 0x43fb44
sub eax, 2
cmp eax, esi
ja 0x43fb30
movzx ecx, word [eax]
mov dl, byte [ebp + 0x62]
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
cmp cx, 0x29
jne 0x43fb82
add eax, 0xfffffffe
add ebx, 2
cmp eax, esi
jbe 0x43fb74
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fb6d
cmp ecx, 9
jne 0x43fb74
sub eax, 2
cmp eax, esi
ja 0x43fb60
xor ecx, ecx
mov word [eax + 2], cx
mov al, 1
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
cmp byte [ebp + 0x64], 0x17
jne case.0x43ee81.13
cmp word [ebx], 0x7b
jne case.0x43ee81.13
jmp 0x43fb9b
mov esi, dword [ebp + 0x5c]
test esi, esi
je 0x43fbc5
cmp word [esi], 0x28
jne 0x43fbc5
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Syntax_error.
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
movzx eax, word [ebx]
mov ecx, eax
cmp eax, 0x7b
jne 0x43fbe6
mov byte [ebp + 0x63], 1
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43fbd3
cmp eax, 9
je 0x43fbd3
mov ecx, eax
test cx, cx
je case.0x43ee81.13
mov dword [ebp + 0x54], ebx
sub ebx, 2
xor eax, eax
mov word [ebx], ax
jmp case.0x43ee81.13
push 0
push 0
mov edx, 0x3a
mov ecx, ebx
call fcn.00483ba0
add esp, 8
cmp word [ebx + eax*2], 0
lea esi, [ebx + eax*2]
jne 0x43fc3c
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Missing__:_
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
xor eax, eax
mov word [esi], ax
cmp word [ebx], ax
je 0x43fc88
mov ecx, ebx
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43fc50
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [ebx + eax*2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fc72
cmp ecx, 9
jne 0x43fc7b
cmp eax, ebx
je 0x43fc83
sub eax, 2
jmp 0x43fc65
xor ecx, ecx
mov word [eax + 2], cx
jmp 0x43fc88
xor ecx, ecx
mov word [eax], cx
movzx eax, word [esi + 2]
add esi, 2
cmp eax, 0x20
je 0x43fc88
cmp eax, 9
je 0x43fc88
mov dl, byte [ebp + 0x62]
mov dword [ebp + 0x54], esi
mov cl, dl
mov dword [ebp + 0x50], ecx
mov byte [ebp + 0x48], cl
test ax, ax
jne case.0x43ee81.13
mov al, dl
mov dword [ebp + 0x54], 0
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
mov ecx, dword [ebp + 0x78]
lea eax, [edi + edi*2]
mov dword [ebp + 0x40], eax
test ecx, ecx
je 0x43fcd7
mov eax, ebx
sub eax, dword [ebp + 0x70]
sar eax, 1
lea edi, [ecx + eax*2]
mov dword [ebp + 0x44], edi
jmp 0x43fcfd
mov esi, dword [ebp + 0x44]
add esi, esi
mov eax, esi
call fcn.004b5ce0
mov edi, esp
push esi
push 0
push edi
mov dword [ebp + 0x44], edi
call fcn.0049e150
add esp, 0xc
mov edx, edi
mov ecx, ebx
call fcn.00483a80
mov eax, dword [ebp + 0x64]
cmp al, 0x14
ja 0x43fd08
cmp al, 0x12
jae 0x43fd15
mov edx, 1
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
jmp 0x43fd18
mov edx, dword [ebp + 0x50]
cmp al, 0xf
jne 0x43fddd
movzx eax, word [ebx]
mov esi, ebx
mov dword [ebp + 0x78], eax
movzx edi, ax
add eax, 0xffffffbf
cmp ax, 0x19
mov eax, edi
ja 0x43fd3b
or eax, 0x20
jmp 0x43fd3d
mov edi, eax
cmp ax, 0x69
jne 0x43fd60
mov cx, word [esi + 2]
call fcn.0040c3a0
cmp ax, 0x6e
jne 0x43fd60
movzx eax, word [esi + 4]
cmp eax, 0x20
je 0x43fdc2
cmp eax, 9
je 0x43fdc2
cmp word [ebp + 0x78], 0x7f
ja 0x43fd85
push edi
call fcn.004a3bc0
add esp, 4
test eax, eax
jne 0x43fd85
movzx eax, word [esi]
cmp eax, 0x5f
je 0x43fd85
cmp eax, 0x2c
jne 0x43fba5
movzx eax, word [esi]
cmp eax, 0x7f
ja 0x43fda2
push eax
call fcn.004a3b30
add esp, 4
test eax, eax
jne 0x43fda2
movzx eax, word [esi]
cmp eax, 0x5f
jne 0x43fda7
add esi, 2
jmp 0x43fd85
cmp eax, 0x2c
jne 0x43fdb0
add esi, 2
nop
movzx eax, word [esi]
cmp eax, 0x20
je 0x43fdac
cmp eax, 9
je 0x43fdac
jmp 0x43fd25
mov edx, dword [ebp + 0x50]
cmp esi, ebx
mov ecx, 0x20
mov eax, 0x2c
cmove eax, ecx
mov word [esi + 2], cx
mov word [esi], ax
jmp 0x43fded
xor ecx, ecx
movzx edx, dl
cmp al, 0x17
cmove edx, ecx
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
mov eax, dword [ebp + 0x40]
xor ecx, ecx
xor esi, esi
mov dword [ebp + 0x5c], esi
movsx edi, byte [eax*2 + 0x4e47a5]
mov dword [ebp + 0x3c], edi
lea eax, [edi - 1]
mov dword [ebp + 0x38], eax
cmp word [ebx], cx
je 0x43ff5f
cmp esi, edi
jge 0x43ff5f
mov edi, dword [ebp + 0x44]
lea eax, [ebx + ecx*2]
mov dword [ebp + esi*4 - 0x18], eax
lea eax, [edi + ecx*2]
mov dword [ebp + esi*4 - 0x68], eax
test dl, dl
je 0x43fec0
push edi
push ecx
mov edx, 0x2c
mov ecx, ebx
call fcn.00483ba0
add esp, 8
mov ecx, eax
cmp word [ebx + ecx*2], 0
je 0x43ff42
cmp esi, dword [ebp + 0x38]
je 0x43ff58
xor eax, eax
mov word [ebx + ecx*2], ax
mov eax, dword [ebp + esi*4 - 0x18]
mov edi, dword [ebp + esi*4 - 0x68]
mov dword [ebp + 0x78], eax
cmp word [eax], 0
je 0x43ff1a
mov edx, eax
lea esi, [edx + 2]
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x43fe80
sub edx, esi
sar edx, 1
lea esi, [edx - 1]
mov edx, dword [ebp + 0x5c]
lea eax, [edi + esi*2]
mov edi, dword [ebp + 0x78]
sub edi, dword [ebp + edx*4 - 0x68]
nop
movzx edx, word [edi + eax]
cmp edx, 0x20
je 0x43feae
cmp edx, 9
jne 0x43ff10
cmp word [eax], 0
jne 0x43ff10
test esi, esi
je 0x43fefc
dec esi
sub eax, 2
jmp 0x43fea0
movzx eax, word [ebx + ecx*2]
cmp eax, 0x2c
jne 0x43fedf
test edi, edi
je 0x43fe45
cmp word [edi + ecx*2], 0
je 0x43fe45
inc ecx
jmp 0x43fec0
test ax, ax
je 0x43fe45
cmp eax, 0x60
jne 0x43fef9
test edi, edi
jne 0x43fef9
cmp word [ebx + ecx*2 + 2], di
je 0x43fef9
inc ecx
inc ecx
jmp 0x43fec0
cmp edx, 0x20
je 0x43ff06
cmp edx, 9
jne 0x43ff1a
mov eax, dword [ebp + 0x78]
xor edx, edx
mov word [eax], dx
jmp 0x43ff1a
mov eax, dword [ebp + 0x78]
xor edx, edx
mov word [eax + esi*2 + 2], dx
mov edi, dword [ebp + 0x44]
inc ecx
mov esi, ebx
sub esi, edi
lea eax, [edi + ecx*2]
movzx edx, word [esi + eax]
cmp edx, 0x20
je 0x43ff33
cmp edx, 9
jne 0x43ff3f
cmp word [eax], 0
jne 0x43ff3f
inc ecx
add eax, 2
jmp 0x43ff25
mov esi, dword [ebp + 0x5c]
mov edi, dword [ebp + 0x3c]
inc esi
cmp word [ebx + ecx*2], 0
mov dword [ebp + 0x5c], esi
je 0x43ff5f
mov edx, dword [ebp + 0x50]
jmp 0x43fe11
mov edi, dword [ebp + 0x3c]
inc esi
mov dword [ebp + 0x5c], esi
mov eax, dword [ebp + 0x40]
mov al, byte [eax*2 + 0x4e47a4]
movsx edx, al
mov byte [ebp + 0x7b], al
cmp esi, edx
jge 0x43ffcb
cmp byte [ebp + 0x7b], 1
mov ecx, 0x4cee30
mov eax, 0x4d7c50
cmovle eax, ecx
push eax
mov eax, dword [ebp + 0x40]
push edx
push dword [eax*2 + 0x4e47a0]
lea eax, [ebp - 0xa64]
push str.__s__requires_at_least__d_parameter_s.
push 0x400
push eax
call fcn.00481690
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x18
push dword [ebp + 0x70]
push eax
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
cmp word [ebx + ecx*2], 0
mov ebx, dword [ebp + 0x64]
je 0x440036
cmp bl, 2
je 0x440036
cmp bl, 0x17
je 0x440036
mov ecx, 0x4cee30
cmp edi, 1
mov eax, 0x4d7c50
cmovle eax, ecx
push eax
mov eax, dword [ebp + 0x40]
push edi
push dword [eax*2 + 0x4e47a0]
lea eax, [ebp - 0xa64]
push str.__s__accepts_at_most__d_parameter_s.
push 0x400
push eax
call fcn.00481690
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x18
push dword [ebp + 0x70]
push eax
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
xor eax, eax
cmp bl, 0x1b
jne 0x440041
mov edx, esi
jmp 0x440049
cmp bl, 0x17
jne 0x440049
lea edx, [esi - 1]
test edx, edx
jle 0x440067
nop dword [eax]
lea ecx, [eax + 1]
mov eax, dword [ebp + eax*4 - 0x18]
cmp word [eax], 0
je 0x440110
mov eax, ecx
cmp eax, edx
jl 0x440050
test esi, esi
je 0x440167
cmp bl, 0xa
jb 0x440079
cmp bl, 0x10
jbe 0x44008c
cmp bl, 8
je 0x44008c
cmp bl, 0x17
je 0x44008c
cmp bl, 0x1a
jne 0x44018b
cmp byte [ebp + 0x63], 0
jne 0x440167
mov esi, dword [ebp + esi*4 - 0x1c]
mov ecx, esi
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4400a0
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [esi + eax*2]
cmp eax, esi
jb 0x440164
cmp word [eax], 0x7b
jne 0x440164
xor ecx, ecx
mov byte [ebp + 0x63], 1
mov word [eax], cx
cmp word [esi], cx
je 0x4401f9
mov ecx, esi
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4400e0
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [esi + eax*2]
movzx edx, word [eax]
cmp edx, 0x20
je 0x440102
cmp edx, 9
jne 0x440156
cmp eax, esi
je 0x4401f4
sub eax, 2
dec ecx
jmp 0x4400f5
mov eax, dword [ebp + 0x40]
push ecx
push dword [eax*2 + 0x4e47a0]
lea eax, [ebp - 0xa64]
push str.__s__requires_that_parameter__u_be_non_blank.
push 0x400
push eax
call fcn.00481690
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x14
push dword [ebp + 0x70]
push eax
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
xor edx, edx
mov word [eax + 2], dx
test ecx, ecx
je 0x4401f9
mov esi, dword [ebp + 0x5c]
cmp bl, 0x1a
jne 0x44018b
test esi, esi
je 0x44018b
mov eax, dword [ebp - 0x18]
cmp word [eax], 0
jne 0x44018b
mov ecx, dword [ebp + 0x58]
push 0x4cee30
push str.Parameter_1_must_not_be_blank_in_this_case.
call fcn.0040d830
push dword [ebp + 0x48]
lea eax, [ebp - 0x68]
push eax
push esi
mov esi, dword [ebp + 0x58]
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 0x74]
mov ecx, esi
call fcn.00440300
test eax, eax
je 0x43f0cf
cmp byte [ebp + 0x63], 0
je 0x4401cb
push 0
push 0
push 0
push 0
push 3
mov ecx, esi
call fcn.00440300
test eax, eax
je 0x43f0cf
mov eax, dword [ebp + 0x54]
test eax, eax
je 0x43f305
push 0
push 0
push 0
push eax
mov ecx, esi
call fcn.0043eda0
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
xor ecx, ecx
mov word [eax], cx
cmp bl, 0xa
je 0x440228
cmp bl, 0x17
je 0x440228
cmp bl, 0x1a
je 0x440228
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Parameter_1_required
call fcn.0040d830
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov esi, dword [ebp + 0x5c]
dec esi
jmp 0x440167