Function at 0x41af40
Capabilities:
Contain obfuscated stackstrings
Parse credit card information

Disassembly:
mov eax, 0x10cd8
call fcn.004996e0
mov eax, dword [esp + 0x10ce8]
push ebx
push ebp
mov ebp, dword [esp + 0x10ce4]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x18], edi
test eax, eax
je 0x41afaa
lea edx, [esp + 0xd8]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x41af70
mov eax, dword [esp + 0x10cfc]
mov ecx, eax
mov dword [esp + 0x20], ecx
test eax, eax
je 0x41afc2
lea ebp, [ecx + 2]
movzx eax, word [ebp]
cmp eax, 0x20
je 0x41afa5
cmp eax, 9
jne 0x41b684
add ebp, 2
jmp 0x41af93
cmp byte [esp + 0x10cf0], 3
jne 0x41aff3
xor eax, eax
mov word [esp + 0xd8], ax
mov dword [esp + 0x20], eax
mov byte [esp + 0x17], 0
mov ax, word [0x4c4938]
mov byte [esp + 0x16], 0
cmp word [ebp], ax
jne 0x41b6e9
movzx eax, word [ebp + 2]
add ebp, 2
cmp eax, 0x20
je 0x41afdc
cmp eax, 9
jne 0x41bec6
jmp 0x41afdc
push 6
push str.Global
push ebp
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41b026
mov ecx, dword [0x4c4a14]
mov ebx, dword [ecx + 0xb4]
neg ebx
sbb ebx, ebx
and ebx, 0xffffff80
add ebx, 0xc1
mov dword [esp + 0x1c], ebx
jmp 0x41b082
mov edx, dword [0x4c4a14]
cmp dword [edx + 0xb4], 0
je 0x41b658
push 5
push str.Local
push ebp
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41b05e
mov dword [esp + 0x1c], 0x42
mov ebx, dword [esp + 0x1c]
lea eax, [ebp + 0xa]
jmp 0x41b085
push 6
push str.Static
push ebp
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41b658
mov dword [esp + 0x1c], 0x62
mov ebx, dword [esp + 0x1c]
lea eax, [ebp + 0xc]
movzx ecx, word [eax]
test cx, cx
je 0x41b5db
cmp ecx, 0x20
je 0x41b09f
cmp ecx, 9
jne 0x41b658
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x20
je 0x41b0ae
cmp eax, 9
jne 0x41b0b3
add esi, 2
jmp 0x41b0a1
cmp word [esi], 0
je 0x41b5db
movzx ebp, word [esi + 2]
xor eax, eax
push eax
push esi
mov word [esi + 2], ax
call fcn.00478290
add esp, 8
mov word [esi + 2], bp
test eax, eax
je 0x41b651
cmp byte [edi + 0x44], 0
mov ebp, dword [0x4c4a14]
je 0x41b136
mov eax, dword [ebp + 0xb4]
cmp byte [eax + 0x3c], 0
jne 0x41b136
cmp ebx, 0x62
je 0x41b106
cmp ebx, 0x42
setne cl
add cl, 0x41
mov byte [eax + 0x3c], cl
mov eax, dword [edi + 4]
test eax, eax
je 0x41b194
mov al, byte [eax]
cmp al, 9
jb 0x41b11b
cmp al, 0x20
jbe 0x41b12f
cmp al, 0x21
je 0x41b12f
cmp al, 0x69
jb 0x41b127
cmp al, 0x6b
jbe 0x41b12f
cmp al, 0x6f
jb 0x41b194
cmp al, 0x71
ja 0x41b194
mov byte [esp + 0x17], 1
jmp 0x41b199
mov eax, dword [ebp + 0xb4]
test eax, eax
je 0x41b106
movzx edx, byte [eax + 0x3c]
cmp ebx, edx
jne 0x41b106
cmp ebx, 0x41
jne 0x41b16e
mov eax, dword [esp + 0x10cec]
push eax
push str.Global_variables_must_not_be_declared_in_this_function.
mov ecx, edi
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
cmp ebx, 0x42
jne 0x41b106
mov ecx, dword [esp + 0x10cec]
push ecx
push str.Local_variables_must_not_be_declared_in_this_function.
mov ecx, edi
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov byte [esp + 0x17], 0
cmp word [esi], 0
mov byte [esp + 0x16], 0
mov edi, esi
je 0x41b608
lea ebx, [ebx]
mov ebx, str.___t:
mov eax, edi
call fcn.00409520
mov dword [esp + 0x24], eax
test eax, eax
jne 0x41b1e6
mov eax, edi
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41b1d0
sub eax, edx
sar eax, 1
lea eax, [edi + eax*2]
mov dword [esp + 0x24], eax
mov esi, eax
sub esi, edi
sar esi, 1
cmp dword [ebp + 0xb4], 0
je 0x41b2da
mov edx, dword [0x4c4a14]
mov eax, dword [edx + 0xb4]
xor ebp, ebp
cmp dword [eax + 0x10], ebp
jle 0x41b243
xor ebx, ebx
mov edi, edi
mov eax, dword [eax + 0xc]
mov ecx, dword [eax + ebx]
mov eax, dword [ecx + 0x18]
push 0xffffffffffffffff
push esi
mov ecx, edi
call fcn.00474a00
add esp, 8
test eax, eax
je 0x41b51b
mov edx, dword [0x4c4a14]
mov eax, dword [edx + 0xb4]
inc ebp
add ebx, 0x10
cmp ebp, dword [eax + 0x10]
jl 0x41b210
mov ecx, dword [esp + 0x18]
push 0
push 2
push 0
push esi
push edi
call fcn.00422190
mov ebp, eax
mov eax, dword [esp + 0x1c]
test ebp, ebp
je 0x41b27b
movzx ecx, byte [ebp + 0x16]
xor ecx, eax
test ecx, 0xffffffbf
jne 0x41b537
cmp eax, 0x62
je 0x41b537
xor ebp, ebp
cmp eax, 0x41
je 0x41b2d2
mov edx, dword [0x4c4a14]
mov eax, dword [edx + 0xb4]
xor ebx, ebx
cmp dword [eax + 0x34], ebx
jle 0x41b2d2
mov eax, dword [eax + 0x24]
mov ecx, dword [eax + ebx*4]
mov ecx, dword [ecx + 0x18]
push esi
push 0xffffffffffffffff
mov eax, edi
call fcn.00474a00
add esp, 8
test eax, eax
je 0x41b2c1
mov edx, dword [0x4c4a14]
mov eax, dword [edx + 0xb4]
inc ebx
cmp ebx, dword [eax + 0x34]
jl 0x41b293
jmp 0x41b2d2
mov eax, dword [0x4c4a14]
mov ecx, dword [eax + 0xb4]
mov edx, dword [ecx + 0x24]
mov ebp, dword [edx + ebx*4]
test ebp, ebp
jne 0x41b537
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push ebx
push esi
push edi
call fcn.00422130
mov ebp, eax
test ebp, ebp
je 0x41b5cc
mov al, byte [ebp + 0x17]
test al, al
jne 0x41b301
mov eax, dword [ebp + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x41b597
push 0xffffffffffffffff
push esi
mov eax, 0x4a62cc
mov ecx, edi
call fcn.00474a00
add esp, 8
test eax, eax
je 0x41b597
mov ecx, dword [0x4c4a14]
cmp ebx, 0x41
jne 0x41b357
mov edx, dword [ecx + 0xb4]
cmp dword [edx + 0x34], 0x7d0
jge 0x41b55f
mov eax, edx
mov edx, dword [eax + 0x34]
mov eax, dword [eax + 0x24]
mov dword [eax + edx*4], ebp
mov eax, dword [ecx + 0xb4]
inc dword [eax + 0x34]
jmp 0x41b362
cmp ebx, 0xc1
jne 0x41b362
mov byte [ebp + 0x16], bl
mov eax, dword [esp + 0x24]
call fcn.00409570
movzx ecx, word [eax]
cmp ecx, 0x3d
ja case.0x41b37a.1
movzx ecx, byte [ecx + 0x41cbf0]
jmp dword [ecx*4 + 0x41cbdc]
add eax, 2
call fcn.00409570
mov ebx, dword [esp + 0x18]
mov edi, eax
jmp 0x41b506
cmp word [eax + 2], 0x3d
jne 0x41b57b
add eax, 4
xor bl, bl
xor dl, dl
xor ebp, ebp
xor esi, esi
lea ebx, [ebx]
movzx ecx, word [eax + esi*2]
cmp ecx, 0x2c
jne 0x41b455
test dl, dl
jne case.0x41b461.1
test ebp, ebp
jg case.0x41b461.1
lea ebp, [eax + esi*2]
lea eax, [ebp - 2]
mov edx, edi
call fcn.00409590
mov esi, eax
movzx edx, word [esi + 2]
xor eax, eax
mov dword [esp + 0x24], edx
mov word [esi + 2], ax
test bl, bl
je 0x41b43a
lea edx, [esp + 0x8ce0]
mov eax, edi
sub edx, edi
lea esp, [esp]
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x41b400
push 0
push 0xffffffffffffffff
push 1
push 1
push 0x4a37d8
lea ecx, [esp + 0x8cf4]
push 0x4a37e0
push ecx
xor eax, eax
call fcn.00475150
add esp, 0x1c
lea edi, [esp + 0x8ce0]
cmp dword [esp + 0x1c], 0x62
mov ebx, dword [esp + 0x18]
jne 0x41b489
mov byte [ebx + 0x45], 1
jmp 0x41b4b2
add eax, 2
mov bl, 1
jmp 0x41b3a4
cmp ecx, 0x7d
ja case.0x41b461.1
movzx ecx, byte [ecx + 0x41cc44]
jmp dword [ecx*4 + 0x41cc30]
test dl, dl
sete dl
inc esi
jmp 0x41b3b0
test dl, dl
jne case.0x41b461.1
inc ebp
inc esi
jmp 0x41b3b0
test dl, dl
jne case.0x41b461.1
dec ebp
inc esi
jmp 0x41b3b0
cmp byte [esp + 0x17], 0
je 0x41b4b2
cmp byte [esp + 0x16], 0
jne 0x41b4b2
push 0
push 0
push 0
push 0x73
push ebx
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
mov byte [esp + 0x16], 1
push 0
push 0
push 0
push 0
push 0
push 0
push edi
mov ecx, ebx
call fcn.0041af40
test eax, eax
je 0x41b5cc
cmp dword [esp + 0x1c], 0x62
jne 0x41b4e8
mov eax, dword [ebx + 4]
mov byte [ebx + 0x45], 0
movzx edx, byte [eax]
mov dword [eax + 0xc], edx
mov eax, dword [ebx + 4]
mov byte [eax], 8
mov cx, word [esp + 0x24]
mov word [esi + 2], cx
cmp word [ebp], 0x2c
jne 0x41b504
lea eax, [ebp + 2]
call fcn.00409570
mov edi, eax
jmp 0x41b506
mov edi, ebp
cmp word [edi], 0
je 0x41b5b3
mov ebp, dword [0x4c4a14]
jmp 0x41b1b0
mov ecx, dword [esp + 0x18]
push edi
push str.Parameters_must_not_be_declared.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
test byte [ebp + 0x16], 0x40
mov eax, str.Duplicate_declaration.
jne 0x41b547
mov eax, str.Declaration_conflicts_with_existing_var.
mov ecx, dword [esp + 0x18]
push edi
push eax
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov ecx, dword [esp + 0x18]
push edi
push str.Too_many_declarations.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov ecx, dword [esp + 0x18]
push edi
push str.This_line_does_not_contain_a_recognized_action.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov ecx, dword [esp + 0x18]
push edi
push str.Built_in_variables_must_not_be_declared.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
cmp byte [esp + 0x16], 0
je 0x41b608
push 0
push 0
push 0
push 0x74
push ebx
call fcn.0041d4c0
test eax, eax
jne 0x41b608
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
cmp byte [edi + 0x44], 0
je 0x41b637
mov edx, dword [0x4c4a14]
mov ecx, dword [edx + 0xb4]
mov al, byte [ecx + 0x3c]
test al, al
jne 0x41b61a
cmp ebx, 0x42
jne 0x41b605
mov dword [esp + 0x1c], 0x46
mov ebx, dword [esp + 0x1c]
mov byte [ecx + 0x3c], bl
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
cmp al, 0x46
jne 0x41b637
cmp ebx, 0x62
jne 0x41b637
mov byte [ecx + 0x3c], 0x66
lea eax, [ebx - 0x61]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
push ebp
push str.This_line_does_not_contain_a_recognized_action.
mov ecx, edi
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov ebp, dword [esp + 0x10cec]
push 1
push ebp
lea eax, [esp + 0xe0]
push eax
push edi
call fcn.0041cfb0
mov ecx, eax
mov dword [esp + 0x20], ecx
test ecx, ecx
jne 0x41af90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
movzx eax, word [ecx + 2]
cmp ax, word [0x4c4938]
je 0x41b6df
test ax, ax
je 0x41b6df
cmp eax, 0x20
je 0x41b6df
cmp eax, 9
je 0x41b6df
cmp eax, 0x28
jne 0x41afc2
lea ecx, [esp + 0xd8]
push 0x4a6320
push ecx
call fcn.0048dee9
add esp, 8
test eax, eax
je 0x41b6df
lea edx, [esp + 0xd8]
push str.WHILE
push edx
call fcn.0048dee9
add esp, 8
test eax, eax
jne 0x41afc2
mov byte [esp + 0x17], 1
jmp 0x41afc7
cmp byte [esp + 0x10cf0], 0
jne 0x41c0c6
cmp byte [esp + 0x10cf4], 0
jne case.0x41bc03.39
cmp byte [esp + 0x17], 0
je 0x41bbe5
lea ecx, [esp + 0xd8]
push 0x4a6320
push ecx
call fcn.0048dee9
add esp, 8
test eax, eax
jne 0x41bbe5
movzx eax, word [ebp]
cmp eax, 0x28
je case.0x41b849.34
cmp ax, word [0x4c493c]
jne 0x41b759
movzx eax, word [ebp + 2]
cmp eax, 0x20
je case.0x41b849.34
cmp eax, 9
je case.0x41b849.34
mov ax, word [0x4c4938]
mov word [esp + 0x3a], ax
mov edx, 0x20
mov edi, 0x3d
mov eax, edi
mov word [esp + 0x38], dx
mov edx, 0x3a
mov word [esp + 0x46], ax
lea ebx, [esp + 0x38]
mov eax, ebp
mov dword [esp + 0x3c], 0x90028
mov dword [esp + 0x40], 0x3e003c
mov word [esp + 0x44], dx
mov dword [esp + 0x48], 0x2d002b
mov dword [esp + 0x4c], 0x2f002a
mov dword [esp + 0x50], 0x7e0021
mov dword [esp + 0x54], 0x7c0026
mov dword [esp + 0x58], 0x5b005e
mov dword [esp + 0x5c], 0x3f002e
mov dword [esp + 0x60], 0x7b
call fcn.00409520
test eax, eax
je 0x41b7e4
call fcn.00409570
mov esi, eax
jmp 0x41b803
mov eax, ebp
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41b7f0
sub eax, edx
sar eax, 1
lea esi, [ebp + eax*2]
push 3
push 0x4a43ac
push ebp
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41b831
movzx eax, word [ebp + 6]
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41b831
mov bl, 1
jmp 0x41b833
xor bl, bl
movzx eax, word [esi]
add eax, 0xffffffdf
cmp eax, 0x4d
ja case.0x41b849.34
movzx ecx, byte [eax + 0x41cce8]
jmp dword [ecx*4 + 0x41ccc4]
mov byte [esp + 0x10cf0], 0x12
jmp 0x41b884
movzx eax, word [esi + 2]
sub eax, edi
je 0x41b873
dec eax
je 0x41b94b
mov byte [esp + 0x10cf0], 0x16
jmp 0x41b884
mov byte [esp + 0x10cf0], 0x17
mov eax, 0x20
mov word [esi + 2], ax
mov ax, word [0x4c4938]
mov word [esi], ax
mov al, byte [esp + 0x10cf0]
cmp al, 0xf
je 0x41b8a0
cmp al, 0x10
jne 0x41bec6
mov eax, 0x4a63fc
mov ecx, esi
call fcn.00474d10
mov esi, eax
test esi, esi
je 0x41b8f5
movzx ecx, word [esi - 2]
push ecx
push 0x4a4704
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41b8e2
movzx edx, word [esi + 6]
push edx
push 0x4a4704
call fcn.0048ecfb
add esp, 8
test eax, eax
jne 0x41bbca
lea ecx, [esi + 6]
mov eax, 0x4a63fc
call fcn.00474d10
mov esi, eax
test esi, esi
jne 0x41b8b2
mov eax, dword [esp + 0x10cec]
mov ecx, dword [esp + 0x18]
push eax
push str.BETWEEN_requires_the_word_AND.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
cmp word [esi + 2], di
jne 0x41b934
mov ecx, 0x20
mov byte [esp + 0x10cf0], 0x15
mov word [esi + 2], cx
jmp 0x41b884
mov byte [esp + 0x10cf0], 0x14
jmp 0x41b884
cmp word [esi + 2], di
jne case.0x41b849.34
mov edx, 0x20
mov byte [esp + 0x10cf0], 0x13
mov word [esi + 2], dx
jmp 0x41b884
test bl, bl
jne case.0x41b849.34
push 7
push str.between
push esi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne case.0x41b849.34
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov byte [esp + 0x10cf0], 0xf
mov word [esi + 0xc], ax
jmp 0x41b884
test bl, bl
jne case.0x41b849.34
push 8
push str.contains
push esi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne case.0x41b849.34
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov byte [esp + 0x10cf0], 0xb
mov dword [esi + 0xc], eax
jmp 0x41b884
mov ax, word [esi + 2]
call fcn.004094f0
movzx eax, ax
add eax, 0xffffffb2
cmp eax, 0x25
ja case.0x41b849.34
movzx edx, byte [eax + 0x41cd44]
jmp dword [edx*4 + 0x41cd38]
test bl, bl
je 0x41ba18
mov byte [esp + 0x10cf0], 0x11
jmp 0x41ba74
lea eax, [esi + 4]
call fcn.00409570
push 3
mov ebx, eax
push 0x4a6fec
push ebx
call fcn.0048e737
add esp, 0xc
test eax, eax
je 0x41ba40
mov byte [esp + 0x10cf0], 0xd
jmp 0x41ba5d
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [ebx], eax
mov byte [esp + 0x10cf0], 0xe
mov word [ebx + 4], ax
cmp byte [esp + 0x10cf0], 0x11
mov edx, 0x20
mov word [esi + 2], dx
jne 0x41b884
mov eax, ebp
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41ba80
sub eax, edx
sar eax, 1
cmp word [ebp + eax*2 - 2], 0x7b
lea eax, [ebp + eax*2 - 2]
jne 0x41c0c6
xor edx, edx
mov word [eax], dx
sub eax, ebp
sar eax, 1
mov esi, ebp
call fcn.00413ad0
mov byte [esp + 0x16], 1
jmp 0x41c0c6
test bl, bl
je 0x41bac7
mov byte [esp + 0x10cf0], 0x11
jmp 0x41ba74
mov byte [esp + 0x10cf0], 9
jmp 0x41b87b
push 3
push 0x4a6fec
push esi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne case.0x41b849.34
movzx ecx, word [esi + 6]
lea eax, [esi + 6]
cmp ecx, 0x20
je 0x41bb01
cmp ecx, 9
jne case.0x41b849.34
mov ecx, 0x20
movzx edx, cx
mov ecx, edx
shl edx, 0x10
or ecx, edx
mov dword [esi], ecx
mov word [esi + 4], cx
call fcn.00409570
push 2
mov edi, eax
push 0x4a37a0
push edi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41bb4f
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov byte [esp + 0x10cf0], 0xa
mov dword [edi], eax
jmp 0x41b884
push 7
push str.between
push edi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41bb8b
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov byte [esp + 0x10cf0], 0x10
mov word [edi + 0xc], ax
jmp 0x41b884
push 8
push str.contains
push edi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41b884
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [edi], eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov byte [esp + 0x10cf0], 0xc
mov dword [edi + 0xc], eax
jmp 0x41b884
mov cx, word [0x4c4938]
mov word [esi], cx
mov eax, 0x20
mov dword [esi + 2], 0x200020
jmp 0x41bec6
movzx ecx, word [ebp]
movzx eax, word [ebp + 2]
lea edx, [ecx - 0x26]
lea esi, [ebp + 2]
cmp edx, 0x56
ja case.0x41bc03.39
movzx edx, byte [edx + 0x41cd94]
jmp dword [edx*4 + 0x41cd6c]
mov byte [esp + 0x10cf0], 1
jmp 0x41bea2
cmp eax, 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 2
jmp 0x41be2d
cmp word [esp + 0xd8], 0x2b
jne 0x41bc47
cmp word [esp + 0xda], 0
jne 0x41bc47
mov cl, 1
jmp 0x41bc52
xor cl, cl
cmp eax, 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 4
test cl, cl
je 0x41be15
mov eax, esi
call fcn.00409570
mov ebx, str.__t____:_______._
mov ebp, eax
call fcn.00409520
test eax, eax
jne 0x41bd3c
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41bc82
mov edi, dword [esp + 0x10cec]
sub eax, edx
sar eax, 1
mov esi, eax
lea eax, [esi + esi + 2]
push eax
push ebp
push edi
call fcn.0048e960
mov cx, word [0x4c4938]
add esp, 0xc
mov word [edi + esi*2], cx
xor eax, eax
mov dword [edi + esi*2 + 2], 0x31
jmp 0x41bebf
cmp word [esp + 0xd8], 0x2d
jne 0x41bce8
cmp word [esp + 0xda], 0
jne 0x41bce8
mov cl, 1
mov byte [esp + 0x10cf0], 5
jmp 0x41bc5a
xor cl, cl
cmp eax, 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 5
jmp 0x41bc5a
cmp eax, 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 6
jmp 0x41be2d
cmp eax, 0x3d
jne 0x41bd28
mov byte [esp + 0x10cf0], 7
jmp 0x41be2d
cmp eax, 0x2f
jne case.0x41bc03.39
cmp word [ebp + 4], 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 3
jmp 0x41bebf
cmp eax, 0x3d
jne case.0x41bc03.39
mov byte [esp + 0x10cf0], 3
jmp 0x41bebf
cmp ax, cx
jmp 0x41bd2b
mov edi, 0x3d
cmp ax, di
je 0x41bd3c
mov eax, esi
call fcn.0042fdd0
cmp word [eax], 0x28
je 0x41bd3c
cmp eax, esi
je case.0x41bc03.39
call fcn.00409570
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x5b
je 0x41bd3c
test ax, ax
je 0x41bd3c
cmp word [esi + 2], di
lea ebx, [esi + 2]
jne 0x41bdb2
push eax
push str.:__.
call fcn.0048ecfb
add esp, 8
test eax, eax
jne 0x41bd3c
movzx eax, word [esi]
cmp word [ebx], ax
jne 0x41bdeb
push eax
push 0x4a7048
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41bdd6
cmp word [esi + 4], di
je 0x41bd3c
movzx eax, word [esi]
cmp eax, 0x2b
je 0x41bd3c
cmp eax, 0x2d
je 0x41bd3c
cmp ax, 0x2e
jne case.0x41bc03.39
mov esi, ebx
mov eax, esi
call fcn.0042fdd0
cmp word [eax], 0x28
jne 0x41bd7b
mov byte [esp + 0x10cf0], 3
jmp 0x41bebf
cmp byte [esp + 0x10cf0], 3
je 0x41bebf
cmp byte [esp + 0x10cf0], 1
je 0x41be98
xor cl, cl
xor ebx, ebx
mov edx, 2
jmp 0x41be40
movzx eax, word [ebp + edx*2]
cmp ax, word [0x4c4938]
jne 0x41bf0e
test cl, cl
jne case.0x41bf1a.1
test ebx, ebx
jg case.0x41bf1a.1
cmp word [ebp + edx*2], 0
je 0x41be98
mov al, byte [esp + 0x10cf0]
cmp al, 4
je 0x41be7d
cmp al, 5
jne 0x41bd3c
lea eax, [ebp + edx*2 + 2]
call fcn.00409570
mov ebx, str.__t____:_______._
call fcn.00409520
test eax, eax
jne 0x41bd3c
cmp byte [esp + 0x10cf0], 3
je 0x41bebf
cmp byte [esp + 0x10cf0], 1
mov cx, word [0x4c4938]
mov word [ebp], cx
je 0x41bebf
mov edx, 0x20
mov word [esi], dx
mov ebp, dword [esp + 0x10cec]
cmp byte [esp + 0x10cf0], 0
jne 0x41c0c6
cmp byte [esp + 0x17], 0
je 0x41bf42
cmp byte [esp + 0x10cf4], 0
jne 0x41bf42
lea edi, [esp + 0xd8]
call fcn.0041d0d0
mov byte [esp + 0x10cf0], al
test al, al
jne 0x41c0c6
call fcn.0041d110
mov byte [esp + 0x10cf4], al
jmp 0x41bf50
cmp eax, 0x7d
ja case.0x41bf1a.1
movzx eax, byte [eax + 0x41ce00]
jmp dword [eax*4 + 0x41cdec]
test cl, cl
sete cl
inc edx
jmp 0x41be40
test cl, cl
jne case.0x41bf1a.1
inc ebx
inc edx
jmp 0x41be40
test cl, cl
jne case.0x41bf1a.1
dec ebx
inc edx
jmp 0x41be40
cmp byte [esp + 0x10cf0], 0
jne 0x41c0c6
cmp byte [esp + 0x10cf4], 0
jne 0x41c0c6
cmp word [ebp], 0x7b
jne case.0x41bf83.34
lea edi, [esp + 0xd8]
call fcn.0041d0d0
movzx ecx, al
add ecx, 0xffffffdf
cmp ecx, 0x50
ja case.0x41bf83.34
movzx ecx, byte [ecx + 0x41ce8c]
jmp dword [ecx*4 + 0x41ce80]
cmp word [ebp + 2], 0
mov byte [esp + 0x16], 1
jne case.0x41bf83.34
mov byte [esp + 0x10cf0], al
test al, al
jne 0x41c0c6
movzx edx, word [ebp]
push edx
push str.__t____:_______._
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41c04b
movzx eax, word [ebp]
cmp eax, 0x2b
je 0x41bfcd
cmp eax, 0x2d
jne 0x41c01f
cmp word [ebp + 2], ax
jne 0x41c01f
cmp word [ebp + 4], 0
je 0x41bfe4
mov byte [esp + 0x10cf0], 3
jmp 0x41c006
cmp eax, 0x2b
setne al
add al, 4
mov byte [esp + 0x10cf0], al
mov ax, word [0x4c4938]
mov ecx, 0x31
mov word [ebp], ax
mov word [ebp + 2], cx
cmp byte [esp + 0x10cf0], 0
mov esi, dword [esp + 0x10cec]
mov ebp, esi
jne 0x41c0c6
jmp 0x41c052
cmp eax, 0x3f
je 0x41c042
push 0x3f
push ebp
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41c04b
push 0x3a
push eax
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41c04b
mov ebp, dword [esp + 0x10cec]
jmp 0x41c0be
mov esi, dword [esp + 0x10cec]
movzx eax, word [ebp]
cmp eax, 0x28
je 0x41c0bc
cmp eax, 0x5b
je 0x41c0bc
cmp word [esi], 0x28
je 0x41c0bc
push 3
push 0x4a7084
push esi
call fcn.0048e737
add esp, 0xc
test eax, eax
jne 0x41c088
movzx eax, word [esi + 6]
cmp eax, 0x20
je 0x41c0bc
cmp eax, 9
je 0x41c0bc
push 0x4a643c
push esi
call fcn.0048ed22
add esp, 8
test eax, eax
mov eax, str.Invalid_hotkey.
jne 0x41c0a4
mov eax, str.This_line_does_not_contain_a_recognized_action.
mov ecx, dword [esp + 0x18]
push esi
push eax
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov ebp, esi
mov byte [esp + 0x10cf0], 3
mov bl, byte [esp + 0x10cf0]
movzx eax, bl
lea ecx, [eax - 0x21]
cmp ecx, 0x50
ja case.0x41c0e3.34
movzx edx, byte [ecx + 0x41ceec]
jmp dword [edx*4 + 0x41cee0]
cmp word [ebp], 0x7b
jne case.0x41c0e3.34
mov eax, dword [esp + 0x10cf0]
mov esi, dword [esp + 0x18]
push 0
push 0
push 0
push eax
push esi
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
cmp word [ebp], 0x7b
jne 0x41c138
push 0
push 0
push 0
push 0x73
push esi
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
lea eax, [ebp + 2]
call fcn.00409570
mov ebp, eax
cmp word [ebp], 0
je 0x41b608
push 0
push 0
push 0
push 0
push 0
push 0
push ebp
mov ecx, esi
call fcn.0041af40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
test bl, bl
je 0x41c17a
lea ecx, [eax*8]
sub ecx, eax
lea edx, [ecx*2 + 0x4c4a28]
jmp 0x41c192
movzx eax, byte [esp + 0x10cf4]
lea ecx, [eax*8]
sub ecx, eax
lea edx, [ecx*2 + 0x4c5688]
push 0x8002
lea eax, [esp + 0xcdc]
push 0
push eax
mov dword [esp + 0x38], edx
call fcn.00496dc0
mov edx, dword [esp + 0x10d0c]
add esp, 0xc
test edx, edx
je 0x41c1ed
mov ecx, dword [esp + 0x10d04]
mov eax, ebp
sub eax, dword [esp + 0x20]
sar eax, 1
sub ecx, eax
test ecx, ecx
jle 0x41c2b8
add ecx, ecx
push ecx
lea edx, [edx + eax*2]
push edx
lea eax, [esp + 0xce0]
push eax
call fcn.00496270
add esp, 0xc
jmp 0x41c2b8
xor esi, esi
cmp word [ebp + esi*2], 0
mov ax, word [0x4c4940]
je 0x41c210
lea ecx, [ecx]
cmp word [ebp + esi*2], ax
je 0x41c210
inc esi
cmp word [ebp + esi*2], 0
jne 0x41c200
cmp word [ebp + esi*2], 0
lea ebx, [ebp + esi*2]
je 0x41c2b1
movzx eax, word [ebx + 2]
lea ecx, [ebx + 2]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x41c236.99
movzx edx, byte [eax + 0x41cf60]
jmp dword [edx*4 + 0x41cf40]
mov eax, 7
jmp 0x41c275
mov edx, 8
mov word [ecx], dx
jmp case.0x41c236.99
mov eax, 0xc
jmp 0x41c275
mov edx, 0xa
mov word [ecx], dx
jmp case.0x41c236.99
mov eax, 0xd
jmp 0x41c275
mov edx, 9
mov word [ecx], dx
jmp case.0x41c236.99
mov eax, 0xb
mov word [ecx], ax
mov eax, ecx
lea edi, [eax + 2]
lea ecx, [ecx]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x41c280
sub eax, edi
sar eax, 1
lea edx, [eax + eax + 2]
push edx
push ecx
push ebx
call fcn.00496270
mov eax, 1
add esp, 0xc
mov word [esp + esi*2 + 0xcd8], ax
inc esi
jmp 0x41c1ef
mov bl, byte [esp + 0x10cf0]
mov dword [esp + 0x1c], 0
cmp bl, 0x22
jne 0x41c45a
xor ebx, ebx
mov edi, 1
mov dword [esp + 0x20], edi
cmp word [ebp], bx
je 0x41c544
mov edi, edi
cmp edi, 1
jle 0x41c2e6
inc ebx
movzx eax, word [ebp + ebx*2]
cmp eax, 0x20
je 0x41c2e5
cmp eax, 9
je 0x41c2e5
lea edx, [ebx + ebx]
mov cx, word [edx + ebp]
lea eax, [edx + ebp]
cmp cx, word [0x4c493c]
jne 0x41c34e
cmp word [esp + edx + 0xcd8], 0
jne 0x41c34e
movzx ecx, word [eax + 2]
cmp ecx, 0x20
je 0x41c321
cmp ecx, 9
jne 0x41c34e
cmp edi, 3
jge 0x41c544
movzx ecx, word [0x4c4938]
lea edx, [esp + 0xcd8]
push edx
push ecx
lea eax, [ebx + 2]
mov ecx, ebp
call fcn.00476cc0
add esp, 8
mov esi, eax
jmp 0x41c3cb
cmp word [eax], 0
mov esi, ebx
je 0x41c382
mov di, word [0x4c4938]
mov ecx, eax
nop
cmp word [ecx], di
jne 0x41c370
cmp word [esp + edx + 0xcd8], 0
je 0x41c37e
inc esi
lea edx, [esi + esi]
cmp word [edx + ebp], 0
lea ecx, [edx + ebp]
jne 0x41c360
mov edi, dword [esp + 0x20]
cmp edi, 1
jne 0x41c3c6
cmp word [ebp + esi*2], 0
je 0x41c544
xor edx, edx
push edx
push edx
push edi
push edx
mov word [ebp + esi*2], dx
call fcn.004747c0
add esp, 0x10
test eax, eax
jne 0x41c3ae
mov dword [esp + 0x1c], edi
cmp dword [esp + 0x1c], 0
mov ax, word [0x4c4938]
mov word [ebp + esi*2], ax
jne 0x41c544
jmp 0x41c3cb
cmp edi, 4
je 0x41c3e3
inc edi
cmp word [ebp + esi*2], 0
mov ebx, esi
mov dword [esp + 0x20], edi
jne 0x41c2e0
jmp 0x41c544
push 0
push 1
lea edi, [ebp + ebx*2]
push 1
push 0
mov eax, edi
call fcn.004747c0
add esp, 0x10
test eax, eax
jne 0x41c544
cmp word [ebp + esi*2], ax
jne 0x41c44d
mov ax, word [0x4c493c]
cmp word [edi], ax
jne 0x41c44d
cmp word [esp + ebx*2 + 0xcd8], 0
jne 0x41c44d
movzx ecx, ax
push ecx
add edi, 2
push edi
call fcn.0048ecfb
add esp, 8
test eax, eax
je 0x41c44d
push 0
push 1
push 1
push 0
add eax, 2
call fcn.004747c0
add esp, 0x10
test eax, eax
jne 0x41c544
mov dword [esp + 0x1c], 3
jmp 0x41c544
cmp bl, 0x6a
jne 0x41c544
cmp word [ebp], 0
mov esi, ebp
je 0x41c4b8
lea esp, [esp]
movzx eax, word [esi]
cmp eax, 0x20
je 0x41c47d
cmp eax, 9
jne 0x41c4af
movzx edx, word [esi + 2]
push edx
call fcn.0048fe5c
add esp, 4
cmp eax, 0x69
jne 0x41c4af
movzx eax, word [esi + 4]
push eax
call fcn.0048fe5c
add esp, 4
cmp eax, 0x6e
jne 0x41c4af
movzx eax, word [esi + 6]
cmp eax, 0x20
je 0x41c4b8
cmp eax, 9
je 0x41c4b8
add esi, 2
cmp word [esi], 0
jne 0x41c470
cmp word [esi], 0
jne 0x41c4e1
mov ecx, dword [esp + 0x10cec]
push ecx
mov ecx, dword [esp + 0x1c]
push str.This__For__is_missing_its__in_.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov dx, word [0x4c4938]
mov eax, esi
sub eax, ebp
sar eax, 1
mov ecx, 1
test eax, eax
jle 0x41c504
cmp word [ebp + eax*2], dx
jne 0x41c4ff
inc ecx
dec eax
test eax, eax
jg 0x41c4f7
mov word [esi + 2], dx
cmp ecx, 1
jle 0x41c540
cmp ecx, 2
jle 0x41c535
mov edx, dword [esp + 0x10cec]
mov ecx, dword [esp + 0x18]
push edx
push str.Syntax_error_or_too_many_variables_in__For__statement.
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov eax, 0x20
mov word [esi + 4], ax
jmp 0x41c544
mov word [esi + 4], dx
mov eax, dword [esp + 0x1c]
xor esi, esi
mov byte [esp + 0x20], 0
mov byte [esp + 0x28], 0
mov dword [esp + 0x30], esi
mov dword [esp + 0x24], esi
cmp eax, esi
je 0x41c566
mov dword [esp + 0x34], eax
jmp 0x41c572
mov ecx, dword [esp + 0x2c]
movsx edx, byte [ecx + 5]
mov dword [esp + 0x34], edx
mov dword [esp + 0x1c], esi
cmp word [ebp], si
je 0x41c713
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x1c], eax
jge 0x41c713
mov eax, dword [esp + 0x1c]
cmp eax, 2
jne 0x41c5fb
mov cl, byte [esp + 0x10cf0]
sub cl, 0x18
cmp cl, 3
ja 0x41c5ec
push 0
lea eax, [ebp + esi*2]
push eax
lea edx, [esp + 0x2e0]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x20]
push edx
push eax
call fcn.0041cfb0
mov dword [esp + 0x30], eax
test eax, eax
je 0x41c5ec
lea edi, [esp + 0x2d8]
call fcn.0041d0d0
mov byte [esp + 0x20], al
test al, al
jne 0x41c713
call fcn.0041d110
mov byte [esp + 0x28], al
cmp byte [esp + 0x28], 0
jne 0x41c713
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
dec edi
lea edx, [ebp + esi*2]
lea ecx, [esp + esi*2 + 0xcd8]
mov dword [esp + eax*4 + 0x38], edx
mov dword [esp + eax*4 + 0x88], ecx
cmp eax, edi
je 0x41c70e
mov ax, word [0x4c493c]
cmp word [edx], ax
jne 0x41c63d
cmp word [ecx], 0
jne 0x41c63d
movzx eax, word [edx + 2]
cmp eax, 0x20
je 0x41c661
cmp eax, 9
je 0x41c661
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
mov bl, byte [esp + 0x10cf0]
push 0xffffffffffffffff
add ecx, 7
lea edi, [esp + 0x3c]
call fcn.0041d150
add esp, 4
test al, al
je 0x41c681
movzx edx, word [0x4c4938]
lea ecx, [esp + 0xcd8]
push ecx
push edx
mov eax, esi
mov ecx, ebp
call fcn.00476cc0
add esp, 8
mov esi, eax
jmp 0x41c6ad
movzx eax, word [ebp + esi*2]
test ax, ax
je 0x41c6ad
mov cx, word [0x4c4938]
cmp ax, cx
jne 0x41c6a2
cmp word [esp + esi*2 + 0xcd8], 0
je 0x41c6ad
movzx eax, word [ebp + esi*2 + 2]
inc esi
test ax, ax
jne 0x41c692
cmp word [ebp + esi*2], 0
je 0x41c6fc
xor eax, eax
mov word [ebp + esi*2], ax
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + eax*4 + 0x88]
mov edi, dword [esp + eax*4 + 0x38]
push ecx
call fcn.00413a60
inc esi
lea edx, [esp + 0xcdc]
add esp, 4
lea eax, [ebp + esi*2]
sub edx, ebp
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x41c6ef
cmp ecx, 9
jne 0x41c6fc
cmp word [edx + eax], 0
jne 0x41c6fc
inc esi
add eax, 2
jmp 0x41c6e2
inc dword [esp + 0x1c]
cmp word [ebp + esi*2], 0
jne 0x41c580
jmp 0x41c713
inc eax
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x2c]
mov al, byte [edx + 4]
mov esi, dword [esp + 0x1c]
movsx ecx, al
cmp esi, ecx
jge 0x41c777
cmp al, 1
mov eax, 0x4a7160
jg 0x41c733
mov eax, 0x4a1868
mov edx, dword [edx]
push eax
push ecx
push edx
push str.__s__requires_at_least__d_parameter_s.
mov esi, 0x400
lea edi, [esp + 0x4e8]
call fcn.00474960
add esp, 0x10
mov eax, dword [esp + 0x10cec]
push eax
lea ecx, [esp + 0x4dc]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.0042e990
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
xor ebx, ebx
xor eax, eax
cmp ecx, ebx
jle 0x41c78e
nop
mov edi, dword [esp + eax*4 + 0x38]
inc eax
cmp word [edi], bx
je 0x41c7b1
cmp eax, ecx
jl 0x41c780
mov cl, byte [esp + 0x10cf4]
test cl, cl
je case.default.0x41c7aa
movzx eax, cl
dec eax
cmp eax, 0xc
ja case.default.0x41c7aa
jmp dword [eax*4 + 0x41cf78]
mov edx, dword [edx]
push eax
push edx
push str.__s__requires_that_parameter__u_be_non_blank.
mov esi, 0x400
lea edi, [esp + 0x4e4]
call fcn.00474960
add esp, 0xc
jmp 0x41c751
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x88]
push edx
mov dword [esp + esi*4 + 0x3c], 0x4a7218
mov dword [esp + esi*4 + 0x8c], ebx
inc esi
push esi
lea eax, [esp + 0x40]
push eax
push 0x89
push ecx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edi, dword [esp + 0x18]
mov esi, dword [esp + 0x3c]
lea edx, [esp + 0x88]
push edx
push 2
lea eax, [esp + 0x40]
push eax
push 0x89
mov ebp, 0x4a7218
push edi
mov dword [esp + 0x50], ebp
mov dword [esp + 0xa0], ebx
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x94]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x48]
mov dword [esp + 0x94], ecx
lea ecx, [esp + 0x88]
push ecx
push 5
mov dword [esp + 0x44], edx
lea edx, [esp + 0x40]
push edx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0xa4]
push 0x8c
push edi
mov dword [esp + 0x54], esi
mov dword [esp + 0xa4], ebx
mov dword [esp + 0xa0], eax
mov dword [esp + 0x5c], ebp
mov dword [esp + 0xac], ebx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push esi
lea ecx, [esp + 0x40]
push ecx
push 1
push edx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push esi
lea ecx, [esp + 0x40]
push ecx
push 4
push edx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push esi
lea ecx, [esp + 0x40]
push ecx
push 5
push edx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push esi
lea ecx, [esp + 0x40]
push ecx
push 6
push edx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push esi
lea ecx, [esp + 0x40]
push ecx
push 7
push edx
call fcn.0041d4c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c
mov byte [esp + 0x10cf0], 0x12
jmp case.default.0x41c7aa
mov byte [esp + 0x10cf0], 0x13
jmp case.default.0x41c7aa
mov byte [esp + 0x10cf0], 0x14
jmp case.default.0x41c7aa
mov byte [esp + 0x10cf0], 0x15
jmp case.default.0x41c7aa
mov byte [esp + 0x10cf0], 0x16
jmp case.default.0x41c7aa
mov byte [esp + 0x10cf0], 0x17
cmp esi, ebx
je 0x41ca1e
cmp byte [esp + 0x20], bl
jne 0x41ca1e
cmp byte [esp + 0x28], bl
jne 0x41ca1e
mov al, byte [esp + 0x10cf0]
lea edx, [eax - 0x12]
cmp dl, 0xe
ja 0x41ca1e
cmp al, 0x17
ja 0x41c9eb
sub cl, 6
cmp cl, 5
ja 0x41ca1e
mov eax, dword [esp + esi*4 + 0x34]
sub eax, ebp
sar eax, 1
movzx ecx, word [ebp + eax*2]
cmp cx, bx
je 0x41ca1e
mov dx, word [0x4c4938]
cmp cx, dx
jne 0x41ca13
cmp word [esp + eax*2 + 0xcd8], bx
je 0x41ca52
movzx ecx, word [ebp + eax*2 + 2]
inc eax
cmp cx, bx
jne 0x41ca04
mov ebx, dword [esp + 0x30]
mov al, byte [esp + 0x10cf0]
cmp al, 0x69
je 0x41ca35
cmp al, 0x6b
jne 0x41cac8
mov edi, dword [esp + 0x1c]
cmp edi, 1
jne 0x41cacc
mov edx, dword [esp + 0x38]
cmp word [edx], 0
jne 0x41cad8
jmp 0x41cacc
lea esi, [ebp + eax*2]
movzx ecx, word [ebp + eax*2 + 2]
inc eax
cmp ecx, 0x20
je 0x41ca56
cmp ecx, 9
je 0x41ca56
mov ecx, dword [esp + 0x18]
lea eax, [ebp + eax*2]
push 0
push eax
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2e0]
push eax
push ecx
call fcn.0041cfb0
mov ebx, eax
test ebx, ebx
je 0x41ca22
lea edi, [esp + 0x2d8]
call fcn.0041d0d0
mov byte [esp + 0x20], al
test al, al
jne 0x41caae
call fcn.0041d110
mov byte [esp + 0x28], al
test al, al
je 0x41ca22
mov ecx, dword [esp + 0x1c]
xor edx, edx
mov word [esi], dx
mov esi, dword [esp + ecx*4 + 0x34]
or eax, 0xffffffff
call fcn.00413ad0
jmp 0x41ca22
mov edi, dword [esp + 0x1c]
cmp al, 0x6a
je 0x41cad4
cmp al, 0x70
jne 0x41cb33
test edi, edi
je 0x41cb33
mov esi, dword [esp + edi*4 + 0x34]
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41cae1
sub eax, edx
sar eax, 1
cmp word [esi + eax*2 - 2], 0x7b
jne 0x41cb33
xor ecx, ecx
mov word [esi + eax*2 - 2], cx
or eax, 0xffffffff
mov byte [esp + 0x16], 1
call fcn.00413ad0
test eax, eax
jne 0x41cb33
mov al, byte [esp + 0x10cf0]
cmp al, 0x69
je 0x41cb31
cmp al, 0x70
je 0x41cb31
mov edx, dword [esp + 0x10cec]
push edx
push str.Parameter_1_required
jmp 0x41c761
xor edi, edi
mov edx, dword [esp + 0x10cf0]
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x88]
push eax
push edi
lea ecx, [esp + 0x40]
push ecx
push edx
push esi
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
cmp byte [esp + 0x16], 0
je 0x41cb78
push 0
push 0
push 0
push 0x73
push esi
call fcn.0041d4c0
test eax, eax
je 0x41b5cc
cmp byte [esp + 0x20], 0
jne 0x41cb8a
cmp byte [esp + 0x28], 0
je 0x41b608
mov eax, ebx
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x41cb90
sub eax, edx
sar eax, 1
push eax
mov eax, ebx
sub eax, ebp
sar eax, 1
lea ecx, [esp + eax*2 + 0xcdc]
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x28]
push ebx
lea edx, [esp + 0x2e4]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
push edx
mov ecx, esi
call fcn.0041af40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10cd8
ret 0x1c