Function at 0x43ed30
Capabilities:
Parse credit card information

Disassembly:
push ebp
lea ebp, [esp - 0x68]
sub esp, 0xacc
mov al, byte [ebp + 0x74]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x70]
mov esi, ecx
mov ecx, edi
mov dword [ebp + 0x58], esi
mov dword [ebp + 0x64], eax
mov byte [ebp + 0x63], al
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43ed54
sub ecx, edx
mov edx, dword [ebp + 0x64]
sar ecx, 1
mov dword [ebp + 0x44], ecx
test dl, dl
je 0x43ee18
xor eax, eax
mov ebx, edi
mov word [ebp - 0x264], ax
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x62], al
cmp dl, 0xa
jne 0x43edd8
mov edi, ebx
test ebx, ebx
je 0x43edd8
movzx eax, word [ebx]
test ax, ax
je 0x43edd8
mov esi, eax
nop word [eax + eax]
mov ecx, str.__t_____:________n.
mov edx, 0x20
nop word [eax + eax]
cmp si, dx
je 0x43f919
movzx eax, word [ecx + 2]
add ecx, 2
mov edx, eax
test ax, ax
jne 0x43edb0
movzx eax, word [edi + 2]
add edi, 2
mov esi, eax
test ax, ax
jne 0x43eda0
mov edx, dword [ebp + 0x64]
mov cl, byte [ebp + 0x62]
movzx edi, dl
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 + 0x63], cl
mov dword [ebp + 0x54], 0
cmp eax, 0x12
ja case.0x43ee11.13
movzx eax, byte [eax + 0x4401d8]
mov dl, cl
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
mov edx, dword [ebp + 0x44]
jmp dword [eax*4 + 0x4401c4]
push 6
push str.global
push edi
call fcn.0049f2a2
add esp, 0xc
test eax, eax
jne 0x43ee31
lea ebx, [eax + 0x41]
jmp 0x43ee6a
push 5
push str.local
push edi
call fcn.0049f2a2
add esp, 0xc
test eax, eax
jne 0x43ee4d
lea ebx, [eax + 0x42]
lea eax, [ebx - 0x38]
jmp 0x43ee6f
push 6
push 0x4d2144
push edi
call fcn.0049f2a2
add esp, 0xc
test eax, eax
jne 0x43f2d0
mov ebx, 0x62
mov eax, 0xc
add edi, eax
mov dword [ebp + 0x50], ebx
movzx eax, word [edi]
test ax, ax
je 0x43f27f
cmp eax, 0x20
je 0x43ee90
cmp eax, 9
jne 0x43f2c9
nop
cmp ax, 0x20
je 0x43ee9c
cmp ax, 9
jne 0x43eea5
movzx eax, word [edi + 2]
add edi, 2
jmp 0x43ee90
test ax, ax
je 0x43f27f
cmp ax, 0x7f
ja 0x43eece
movzx eax, ax
push eax
call fcn.004a36e0
add esp, 4
test eax, eax
jne 0x43eece
cmp word [edi], 0x5f
jne 0x43f2c9
mov eax, dword [0x4e4798]
cmp dword [eax + 0x18], 0
jne 0x43eee2
test bl, 2
jne 0x43f2aa
cmp word [edi], 0
mov eax, dword [esi + 0x48]
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x73], 0
je 0x43f295
mov eax, ebx
and eax, 1
mov dword [ebp + 0x44], eax
nop
lea esi, [edi + 2]
movzx eax, word [esi]
cmp eax, 0x7f
ja 0x43ef1e
push eax
call fcn.004a36e0
add esp, 4
test eax, eax
jne 0x43ef1e
cmp word [esi], 0x5f
jne 0x43ef23
add esi, 2
jmp 0x43ef03
mov ebx, esi
xor ecx, ecx
sub ebx, edi
mov dword [ebp + 0x74], ecx
sar ebx, 1
cmp dword [ebp + 0x44], ecx
je 0x43ef4d
push dword [ebp + 0x50]
mov ecx, dword [ebp + 0x58]
push ebx
push edi
call fcn.00443ea0
mov ecx, eax
mov dword [ebp + 0x74], ecx
test ecx, ecx
je 0x43f05f
mov eax, dword [0x4e4798]
cmp dword [eax + 0x18], 0
je 0x43f030
lea eax, [ebp + 0x78]
mov dword [ebp + 0x78], 1
push eax
lea eax, [ebp + 0x54]
test ecx, ecx
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.00443f40
mov ecx, eax
test ecx, ecx
jne 0x43f01c
cmp dword [ebp + 0x78], eax
je 0x43f05f
cmp dword [ebp + 0x74], eax
je 0x43f044
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 0x43efe5
test eax, eax
je 0x43efbc
add eax, eax
jmp 0x43efc1
mov eax, 0x20
mov dword [ebp + 0x3c], eax
shl eax, 2
push eax
push dword [ebx]
call fcn.0049f248
add esp, 8
test eax, eax
je 0x43f1f3
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 0x43f00e
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.0049cd60
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 0x43f215
nop
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x20
je 0x43f03f
cmp eax, 9
jne 0x43f071
add esi, 2
jmp 0x43f030
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.00444670
mov ecx, eax
test ecx, ecx
jne 0x43f01f
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 0x43f1a5
cmp ecx, 0x2c
je 0x43f1de
cmp eax, 0x3a
jne 0x43f094
cmp word [esi + 2], 0x3d
jne 0x43f094
add esi, 4
jmp 0x43f0f8
push eax
push str.__.
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f0ad
cmp word [esi + 2], 0x3d
je 0x43f0f8
movzx eax, word [esi]
push eax
push 0x4d7a40
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f261
movzx ecx, word [esi]
cmp word [esi + 2], cx
jne 0x43f261
movzx eax, word [esi + 4]
cmp eax, 0x3d
je 0x43f0f8
cmp ecx, 0x3e
jne 0x43f261
cmp eax, ecx
jne 0x43f261
cmp word [esi + 6], 0x3d
jne 0x43f261
push 0
push 0
mov edx, 0x2c
mov ecx, esi
call fcn.00483480
add esp, 8
mov ecx, edi
lea esi, [esi + eax*2]
lea edx, [esi - 2]
call fcn.00413900
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 0x43f14b
cmp byte [ebp + 0x73], al
jne 0x43f14b
mov ecx, dword [ebp + 0x58]
push eax
push eax
push eax
push eax
push 3
call fcn.00440290
test eax, eax
je 0x43f05f
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.0043ed30
test eax, eax
je 0x43f05f
mov eax, dword [ebp + 0x74]
mov word [ebx + 2], ax
movzx eax, word [esi]
mov ecx, eax
cmp eax, 0x2c
jne 0x43f195
lea edi, [esi + 2]
movzx eax, word [edi]
cmp eax, 0x20
je 0x43f190
cmp eax, 9
jne 0x43f199
add edi, 2
jmp 0x43f183
mov edi, esi
mov eax, ecx
movzx eax, ax
test ax, ax
jne 0x43ef00
cmp byte [ebp + 0x73], 0
je 0x43f295
mov ecx, dword [ebp + 0x58]
push 0
push 0
push 0
push 0
push 4
call fcn.00440290
test eax, eax
je 0x43f05f
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 0x43f1ee
cmp eax, 9
jne 0x43f19c
add edi, 2
jmp 0x43f1e1
mov ecx, dword [ebp + 0x58]
push 0x4cee20
push str.Out_of_memory.
call fcn.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
test dl, 2
je 0x43f243
test dl, 0x20
mov eax, 0x4d2144
mov edx, str.local
push ecx
cmove eax, edx
mov ecx, ebx
push eax
call fcn.0040d8d0
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.0040d8d0
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.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
cmp byte [esi + 0x50], 0
je 0x43f2aa
cmp ebx, 0x42
je 0x43f2aa
mov eax, dword [0x4e4798]
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.0040d800
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 0x43f2eb
push eax
call fcn.004a36e0
add esp, 4
test eax, eax
jne 0x43f2eb
cmp word [edi], 0x5f
jne 0x43f2f0
add edi, 2
jmp 0x43f2d0
mov ecx, dword [ebp + 0x70]
mov esi, edi
sub esi, ecx
mov dword [ebp + 0x5c], edi
sar esi, 1
je 0x43f36b
cmp esi, 0xfd
ja 0x43f36b
push esi
push ecx
lea eax, [ebp - 0x264]
push eax
call fcn.004aa8c4
add esp, 0xc
mov ebx, edi
xor eax, eax
mov word [ebp + esi*2 - 0x264], ax
movzx eax, word [ebx]
cmp eax, 0x20
je 0x43f330
cmp eax, 9
jne 0x43f335
add ebx, 2
jmp 0x43f323
movzx ecx, word [edi]
test cx, cx
je 0x43f34c
cmp ecx, 0x20
je 0x43f34c
cmp ecx, 9
je 0x43f34c
cmp ecx, 0x28
jne 0x43f35e
cmp eax, 0x3d
je 0x43f35e
mov ecx, dword [ebp + 0x70]
mov byte [ebp + 0x4f], 1
mov byte [ebp + 0x62], 0
jmp 0x43f37f
mov ecx, dword [ebp + 0x70]
mov byte [ebp + 0x4f], 0
mov byte [ebp + 0x62], 0
jmp 0x43f37f
xor eax, eax
mov ebx, ecx
mov word [ebp - 0x264], ax
mov dword [ebp + 0x5c], eax
mov byte [ebp + 0x4f], al
mov byte [ebp + 0x62], al
movzx edi, word [ecx]
cmp edi, 0x22
je 0x43f38c
cmp edi, 0x27
jne 0x43f3ef
mov eax, dword [ebp + 0x78]
lea ebx, [ecx + 2]
add eax, 2
movzx ecx, word [ebx]
cmp cx, di
jne 0x43f3ca
cmp dword [ebp + 0x78], 0
je 0x43f3a9
cmp word [eax], 0
jne 0x43f3e7
test cx, cx
je 0x43f3ef
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43f3ae
cmp eax, 9
je 0x43f3ae
mov edi, dword [ebp + 0x70]
cmp eax, 0x2e
cmovne ebx, edi
jmp 0x43f3f2
test cx, cx
je 0x43f3ef
cmp ecx, 0x60
jne 0x43f3e7
cmp dword [ebp + 0x78], 0
jne 0x43f3e7
cmp word [ebx + 2], 0
je 0x43f3e7
add eax, 2
add ebx, 2
add eax, 2
add ebx, 2
jmp 0x43f395
mov edi, dword [ebp + 0x70]
movzx ecx, word [ebx]
lea esi, [ebx + 2]
movzx edx, word [esi]
lea eax, [ecx - 0x26]
cmp eax, 0x56
ja case.0x43f40e.39
movzx eax, byte [eax + 0x44020c]
jmp dword [eax*4 + 0x4401ec]
movzx eax, byte [ebp + 0x63]
cmp edx, 0x3d
mov dword [ebp + 0x64], 1
mov edx, dword [ebp + 0x64]
cmovne edx, eax
jmp 0x43f461
mov edi, dword [ebp + 0x5c]
test edi, edi
jne 0x43f437
cmp dx, cx
je 0x43f440
cmp edx, 0x3d
jne 0x43f640
mov ebx, dword [ebp + 0x70]
mov dl, 2
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
movzx eax, byte [ebp + 0x63]
cmp edx, 0x3d
mov ecx, 2
cmovne ecx, eax
mov dl, cl
mov byte [ebp + 0x74], dl
mov dword [ebp + 0x64], edx
test dl, dl
je 0x43f685
cmp dl, 1
jne 0x43f4b7
push 0
push 2
mov edx, 0x2c
mov ecx, ebx
call fcn.00483480
add esp, 8
cmp word [ebx + eax*2], 0
je 0x43f4a0
mov edx, 2
mov ebx, edi
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
mov eax, 0x2c
mov word [ebx], ax
mov eax, 0x20
mov word [esi], ax
mov ebx, edi
jmp 0x43edd5
mov ebx, edi
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43ed82
cmp edx, 0x3d
je case.0x43f40e.63
cmp edx, 0x2f
jne case.0x43f40e.39
cmp word [ebx + 4], 0x3d
jmp 0x43f501
cmp dx, cx
jne case.0x43f40e.39
movzx eax, word [ebx + 4]
cmp eax, 0x3d
je case.0x43f40e.63
cmp edx, 0x3e
jne case.0x43f40e.39
cmp eax, edx
jne case.0x43f40e.39
cmp word [ebx + 6], 0x3d
jne case.0x43f40e.39
mov dl, 2
mov ebx, edi
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
cmp edx, 0x3d
jne 0x43f530
mov dl, 2
mov ebx, edi
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
mov edi, esi
movzx eax, word [edi]
cmp eax, 0x7f
ja 0x43f54f
push eax
call fcn.004a36e0
add esp, 4
test eax, eax
jne 0x43f54f
movzx eax, word [edi]
cmp eax, 0x5f
jne 0x43f554
add edi, 2
jmp 0x43f532
cmp eax, 0x28
je 0x43f440
cmp eax, 0x25
je 0x43f440
cmp edi, esi
je case.0x43f40e.39
cmp eax, 0x20
je 0x43f57c
mov byte [ebp + 0x63], 0
cmp eax, 9
jne 0x43f580
mov byte [ebp + 0x63], 1
mov esi, edi
cmp ax, 0x20
je 0x43f58e
cmp ax, 9
jne 0x43f597
movzx eax, word [esi + 2]
add esi, 2
jmp 0x43f582
movzx ecx, ax
test ax, ax
je 0x43f61f
cmp ax, 0x5b
je 0x43f7a4
cmp word [esi + 2], 0x3d
jne 0x43f5ca
push eax
push str.:__.
call fcn.0049ccaf
add esp, 8
test eax, eax
jne 0x43f7a4
movzx eax, word [esi]
mov ecx, eax
cmp word [esi + 2], ax
jne 0x43f61f
push eax
push 0x4d7a40
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f5f2
cmp word [esi + 4], 0x3d
je 0x43f7a4
movzx eax, word [esi]
cmp eax, 0x2b
je 0x43f7a4
cmp eax, 0x2d
je 0x43f7a4
mov ecx, eax
cmp eax, 0x3e
jne 0x43f61f
cmp word [esi + 4], ax
jne 0x43f632
cmp word [esi + 6], 0x3d
je 0x43f7a4
cmp cx, 0x2e
jne 0x43f62d
add esi, 2
jmp 0x43f530
test cx, cx
je 0x43f638
cmp byte [ebp + 0x63], 0
je case.0x43f40e.39
mov dword [ebp + 0x5c], edi
jmp 0x43f64d
mov edi, dword [ebp + 0x5c]
mov edx, dword [ebp + 0x64]
cmp byte [ebp + 0x4f], 0
je 0x43f6f5
mov eax, 8
mov esi, 0x4e47e0
mov dword [ebp + 0x54], eax
nop word [eax + eax]
push dword [esi]
lea eax, [ebp - 0x264]
push eax
call fcn.0049f121
add esp, 8
test eax, eax
je 0x43f68a
inc dword [ebp + 0x54]
add esi, 6
cmp esi, 0x4e4852
jle 0x43f660
jmp 0x43f69b
mov edi, dword [ebp + 0x5c]
jmp 0x43f643
mov edx, dword [ebp + 0x54]
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
test dl, dl
jne 0x43ed82
movzx eax, word [edi]
cmp eax, 0x28
je 0x43f6fd
mov cx, word [ebp - 0x264]
cmp cx, 0x30
jb 0x43f6b6
cmp cx, 0x39
jbe 0x43f6fd
mov edx, dword [ebp + 0x44]
test ax, ax
mov esi, dword [ebp + 0x70]
mov eax, 0x28
je 0x43f6cb
mov word [edi], ax
jmp 0x43f6d0
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 0x43edd5
test dl, dl
jne 0x43ed82
movzx eax, word [ebx]
cmp eax, 0x7b
jne 0x43f7b7
mov ecx, 8
mov esi, 0x4e47e0
mov dword [ebp + 0x54], ecx
push dword [esi]
lea eax, [ebp - 0x264]
push eax
call fcn.0049f121
add esp, 8
test eax, eax
je 0x43f73d
inc dword [ebp + 0x54]
add esi, 6
cmp esi, 0x4e4852
jle 0x43f716
xor cl, cl
jmp 0x43f740
mov ecx, dword [ebp + 0x54]
movzx eax, cl
add eax, 0xfffffff7
cmp eax, 0x11
ja case.0x43f752.11
movzx eax, byte [eax + 0x440270]
jmp dword [eax*4 + 0x440264]
cmp word [ebx + 2], 0
jne case.0x43f752.11
mov dl, cl
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
test cl, cl
jne 0x43edd8
movzx eax, word [ebx]
push eax
push str.__t_____:________n._
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f855
movzx eax, word [ebx]
cmp eax, 0x2b
je 0x43f79a
cmp eax, 0x2d
jne 0x43f824
cmp word [ebx + 2], ax
jne 0x43f824
mov ebx, dword [ebp + 0x70]
mov edx, 2
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
cmp eax, 0x3a
jne case.0x43f752.11
lea eax, [ebp - 0x264]
push 0x4d4570
push eax
call fcn.0049f121
add esp, 8
test eax, eax
jne case.0x43f752.11
mov esi, dword [ebp + 0x58]
mov ecx, esi
push eax
push eax
push eax
push eax
push 0x1b
call fcn.00440290
test eax, eax
je 0x43f05f
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43f7ec
cmp eax, 9
je 0x43f7ec
test ax, ax
je 0x43f295
push 0
push 0
push 0
push ebx
mov ecx, esi
call fcn.0043ed30
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push 0x3f
push ebx
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f855
push 0x3a
push eax
call fcn.0049ccaf
add esp, 8
test eax, eax
je 0x43f855
mov ebx, dword [ebp + 0x70]
mov edx, 2
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
test edi, edi
je 0x43f86e
movzx eax, word [edi]
cmp eax, 0x28
je 0x43f904
cmp eax, 0x5b
je 0x43f904
movzx eax, word [ebx]
mov esi, dword [ebp + 0x70]
cmp eax, 0x25
je 0x43f907
cmp word [esi], 0x28
je 0x43f907
cmp eax, 0x3d
jne 0x43f8aa
mov ecx, dword [ebp + 0x58]
push esi
push str.Syntax_error._Did_you_mean_to_use__:__
call fcn.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
cmp eax, 0x2c
jne 0x43f8cd
mov ecx, dword [ebp + 0x58]
push esi
push str.Function_calls_require_a_space_or____.__Use_comma_only_between_parameters.
call fcn.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
push 0x4d6fc8
push esi
call fcn.0049d69e
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.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov esi, dword [ebp + 0x70]
mov edx, 2
mov ebx, esi
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
jmp 0x43edd8
cmp edi, ebx
jbe 0x43edd5
movzx ecx, word [edi]
mov dword [ebp + 0x54], ecx
cmp ecx, 0x20
je 0x43f93a
cmp ecx, 9
je 0x43f93a
cmp ecx, 0x2c
jne 0x43edd5
mov edx, dword [ebp + 0x64]
mov eax, edi
movzx esi, cx
mov byte [ebp + 0x63], dl
cmp si, 0x20
je 0x43f951
cmp si, 9
jne 0x43f95a
movzx esi, word [eax + 2]
add eax, 2
jmp 0x43f942
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.0049f121
add esp, 8
test eax, eax
jne 0x43f993
mov ecx, dword [ebp + 0x54]
mov edx, 0xb
movzx eax, cx
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
mov word [edi], ax
jmp 0x43fa20
push ebx
push 0x4d7bc4
call fcn.0049f121
add esp, 8
test eax, eax
jne 0x43f9bb
mov ecx, dword [ebp + 0x54]
mov edx, 0xc
movzx eax, cx
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
mov word [edi], ax
jmp 0x43fa20
push ebx
push str.Read
call fcn.0049f121
add esp, 8
test eax, eax
jne 0x43f9e3
mov ecx, dword [ebp + 0x54]
mov edx, 0xd
movzx eax, cx
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
mov word [edi], ax
jmp 0x43fa20
push ebx
push str.Parse
call fcn.0049f121
add esp, 8
test eax, eax
jne 0x43fa08
mov eax, dword [ebp + 0x3c]
mov edx, 0xe
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
mov word [edi], ax
jmp 0x43fa20
mov ecx, dword [ebp + 0x54]
movzx eax, cx
mov word [edi], ax
mov al, byte [ebp + 0x63]
mov dl, al
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
cmp al, 0xa
je 0x43fa3e
mov ebx, dword [ebp + 0x40]
cmp si, 0x2c
jne 0x43edd8
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43fa2d
cmp eax, 9
jmp 0x43fa27
mov dl, al
mov dword [ebp + 0x64], edx
mov byte [ebp + 0x74], dl
cmp si, 0x2c
jne 0x43edd8
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Invalid_loop_type.
call fcn.0040d800
lea esp, [ebp - 0xa70]
pop edi
pop esi
pop ebx
lea esp, [ebp + 0x68]
pop ebp
ret 0x10
mov esi, ebx
jmp 0x43fa77
mov esi, dword [ebp + 0x5c]
mov al, cl
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
test esi, esi
je 0x43fb16
cmp word [esi], 0x28
mov dword [ebp + 0x50], eax
mov byte [ebp + 0x48], al
jne 0x43fb16
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 0x43fadb
cmp byte [ebp + 0x64], 0xf
je 0x43fab9
mov edx, dword [ebp + 0x64]
cmp dl, 0x17
jne 0x43fadb
add eax, 0xfffffffe
mov byte [ebp + 0x62], 1
cmp eax, esi
jbe 0x43fad8
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fad1
cmp ecx, 9
jne 0x43fad8
sub eax, 2
cmp eax, esi
ja 0x43fac4
movzx ecx, word [eax]
mov dl, byte [ebp + 0x63]
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
cmp cx, 0x29
jne 0x43fb16
add eax, 0xfffffffe
add ebx, 2
cmp eax, esi
jbe 0x43fb08
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fb01
cmp ecx, 9
jne 0x43fb08
sub eax, 2
cmp eax, esi
ja 0x43faf4
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.0x43ee11.13
cmp word [ebx], 0x7b
jne case.0x43ee11.13
jmp 0x43fb2f
mov esi, dword [ebp + 0x5c]
test esi, esi
je 0x43fb59
cmp word [esi], 0x28
jne 0x43fb59
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Syntax_error.
call fcn.0040d800
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 0x43fb7a
mov byte [ebp + 0x62], 1
movzx eax, word [ebx + 2]
add ebx, 2
cmp eax, 0x20
je 0x43fb67
cmp eax, 9
je 0x43fb67
mov ecx, eax
test cx, cx
je case.0x43ee11.13
mov dword [ebp + 0x54], ebx
sub ebx, 2
xor eax, eax
mov word [ebx], ax
jmp case.0x43ee11.13
push 0
push 0
mov edx, 0x3a
mov ecx, ebx
call fcn.00483480
add esp, 8
cmp word [ebx + eax*2], 0
lea esi, [ebx + eax*2]
jne 0x43fbd0
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Missing__:_
call fcn.0040d800
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 0x43fc18
mov ecx, ebx
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x43fbe0
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [ebx + eax*2]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x43fc02
cmp ecx, 9
jne 0x43fc0b
cmp eax, ebx
je 0x43fc13
sub eax, 2
jmp 0x43fbf5
xor ecx, ecx
mov word [eax + 2], cx
jmp 0x43fc18
xor ecx, ecx
mov word [eax], cx
movzx eax, word [esi + 2]
add esi, 2
cmp eax, 0x20
je 0x43fc18
cmp eax, 9
je 0x43fc18
mov dl, byte [ebp + 0x63]
mov dword [ebp + 0x54], esi
mov cl, dl
mov dword [ebp + 0x50], ecx
mov byte [ebp + 0x48], cl
test ax, ax
jne case.0x43ee11.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 0x43fc67
mov eax, ebx
sub eax, dword [ebp + 0x70]
sar eax, 1
lea edi, [ecx + eax*2]
mov dword [ebp + 0x44], edi
jmp 0x43fc8d
mov esi, dword [ebp + 0x44]
add esi, esi
mov eax, esi
call fcn.004b5750
mov edi, esp
push esi
push 0
push edi
mov dword [ebp + 0x44], edi
call fcn.0049da30
add esp, 0xc
mov edx, edi
mov ecx, ebx
call fcn.00483360
mov eax, dword [ebp + 0x64]
cmp al, 0x14
ja 0x43fc98
cmp al, 0x12
jae 0x43fca5
mov edx, 1
mov dword [ebp + 0x50], edx
mov byte [ebp + 0x48], dl
jmp 0x43fca8
mov edx, dword [ebp + 0x50]
cmp al, 0xf
jne 0x43fd6d
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 0x43fccb
or eax, 0x20
jmp 0x43fccd
mov edi, eax
cmp ax, 0x69
jne 0x43fcf0
mov cx, word [esi + 2]
call fcn.0040c380
cmp ax, 0x6e
jne 0x43fcf0
movzx eax, word [esi + 4]
cmp eax, 0x20
je 0x43fd52
cmp eax, 9
je 0x43fd52
cmp word [ebp + 0x78], 0x7f
ja 0x43fd15
push edi
call fcn.004a3770
add esp, 4
test eax, eax
jne 0x43fd15
movzx eax, word [esi]
cmp eax, 0x5f
je 0x43fd15
cmp eax, 0x2c
jne 0x43fb39
movzx eax, word [esi]
cmp eax, 0x7f
ja 0x43fd32
push eax
call fcn.004a36e0
add esp, 4
test eax, eax
jne 0x43fd32
movzx eax, word [esi]
cmp eax, 0x5f
jne 0x43fd37
add esi, 2
jmp 0x43fd15
cmp eax, 0x2c
jne 0x43fd40
add esi, 2
nop
movzx eax, word [esi]
cmp eax, 0x20
je 0x43fd3c
cmp eax, 9
je 0x43fd3c
jmp 0x43fcb5
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 0x43fd7d
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 + 0x4e47b5]
mov dword [ebp + 0x3c], edi
lea eax, [edi - 1]
mov dword [ebp + 0x38], eax
cmp word [ebx], cx
je 0x43feef
cmp esi, edi
jge 0x43feef
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 0x43fe50
push edi
push ecx
mov edx, 0x2c
mov ecx, ebx
call fcn.00483480
add esp, 8
mov ecx, eax
cmp word [ebx + ecx*2], 0
je 0x43fed2
cmp esi, dword [ebp + 0x38]
je 0x43fee8
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 0x43feaa
mov edx, eax
lea esi, [edx + 2]
nop dword [eax]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x43fe10
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 0x43fe3e
cmp edx, 9
jne 0x43fea0
cmp word [eax], 0
jne 0x43fea0
test esi, esi
je 0x43fe8c
dec esi
sub eax, 2
jmp 0x43fe30
movzx eax, word [ebx + ecx*2]
cmp eax, 0x2c
jne 0x43fe6f
test edi, edi
je 0x43fdd5
cmp word [edi + ecx*2], 0
je 0x43fdd5
inc ecx
jmp 0x43fe50
test ax, ax
je 0x43fdd5
cmp eax, 0x60
jne 0x43fe89
test edi, edi
jne 0x43fe89
cmp word [ebx + ecx*2 + 2], di
je 0x43fe89
inc ecx
inc ecx
jmp 0x43fe50
cmp edx, 0x20
je 0x43fe96
cmp edx, 9
jne 0x43feaa
mov eax, dword [ebp + 0x78]
xor edx, edx
mov word [eax], dx
jmp 0x43feaa
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 0x43fec3
cmp edx, 9
jne 0x43fecf
cmp word [eax], 0
jne 0x43fecf
inc ecx
add eax, 2
jmp 0x43feb5
mov esi, dword [ebp + 0x5c]
mov edi, dword [ebp + 0x3c]
inc esi
cmp word [ebx + ecx*2], 0
mov dword [ebp + 0x5c], esi
je 0x43feef
mov edx, dword [ebp + 0x50]
jmp 0x43fda1
mov edi, dword [ebp + 0x3c]
inc esi
mov dword [ebp + 0x5c], esi
mov eax, dword [ebp + 0x40]
mov al, byte [eax*2 + 0x4e47b4]
movsx edx, al
mov byte [ebp + 0x7b], al
cmp esi, edx
jge 0x43ff5b
cmp byte [ebp + 0x7b], 1
mov ecx, 0x4cee20
mov eax, 0x4d7c40
cmovle eax, ecx
push eax
mov eax, dword [ebp + 0x40]
push edx
push dword [eax*2 + 0x4e47b0]
lea eax, [ebp - 0xa64]
push str.__s__requires_at_least__d_parameter_s.
push 0x400
push eax
call fcn.00480f70
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x18
push dword [ebp + 0x70]
push eax
call fcn.0040d800
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 0x43ffc6
cmp bl, 2
je 0x43ffc6
cmp bl, 0x17
je 0x43ffc6
mov ecx, 0x4cee20
cmp edi, 1
mov eax, 0x4d7c40
cmovle eax, ecx
push eax
mov eax, dword [ebp + 0x40]
push edi
push dword [eax*2 + 0x4e47b0]
lea eax, [ebp - 0xa64]
push str.__s__accepts_at_most__d_parameter_s.
push 0x400
push eax
call fcn.00480f70
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x18
push dword [ebp + 0x70]
push eax
call fcn.0040d800
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 0x43ffd1
mov edx, esi
jmp 0x43ffd9
cmp bl, 0x17
jne 0x43ffd9
lea edx, [esi - 1]
test edx, edx
jle 0x43fff7
nop dword [eax]
lea ecx, [eax + 1]
mov eax, dword [ebp + eax*4 - 0x18]
cmp word [eax], 0
je 0x4400a0
mov eax, ecx
cmp eax, edx
jl 0x43ffe0
test esi, esi
je 0x4400f7
cmp bl, 0xa
jb 0x440009
cmp bl, 0x10
jbe 0x44001c
cmp bl, 8
je 0x44001c
cmp bl, 0x17
je 0x44001c
cmp bl, 0x1a
jne 0x44011b
cmp byte [ebp + 0x62], 0
jne 0x4400f7
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 0x440030
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [esi + eax*2]
cmp eax, esi
jb 0x4400f4
cmp word [eax], 0x7b
jne 0x4400f4
xor ecx, ecx
mov byte [ebp + 0x62], 1
mov word [eax], cx
cmp word [esi], cx
je 0x440189
mov ecx, esi
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x440070
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
lea eax, [esi + eax*2]
movzx edx, word [eax]
cmp edx, 0x20
je 0x440092
cmp edx, 9
jne 0x4400e6
cmp eax, esi
je 0x440184
sub eax, 2
dec ecx
jmp 0x440085
mov eax, dword [ebp + 0x40]
push ecx
push dword [eax*2 + 0x4e47b0]
lea eax, [ebp - 0xa64]
push str.__s__requires_that_parameter__u_be_non_blank.
push 0x400
push eax
call fcn.00480f70
mov ecx, dword [ebp + 0x58]
lea eax, [ebp - 0xa64]
add esp, 0x14
push dword [ebp + 0x70]
push eax
call fcn.0040d800
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 0x440189
mov esi, dword [ebp + 0x5c]
cmp bl, 0x1a
jne 0x44011b
test esi, esi
je 0x44011b
mov eax, dword [ebp - 0x18]
cmp word [eax], 0
jne 0x44011b
mov ecx, dword [ebp + 0x58]
push 0x4cee20
push str.Parameter_1_must_not_be_blank_in_this_case.
call fcn.0040d800
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.00440290
test eax, eax
je 0x43f05f
cmp byte [ebp + 0x62], 0
je 0x44015b
push 0
push 0
push 0
push 0
push 3
mov ecx, esi
call fcn.00440290
test eax, eax
je 0x43f05f
mov eax, dword [ebp + 0x54]
test eax, eax
je 0x43f295
push 0
push 0
push 0
push eax
mov ecx, esi
call fcn.0043ed30
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 0x4401b8
cmp bl, 0x17
je 0x4401b8
cmp bl, 0x1a
je 0x4401b8
push dword [ebp + 0x70]
mov ecx, dword [ebp + 0x58]
push str.Parameter_1_required
call fcn.0040d800
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 0x4400f7