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

Disassembly:
mov eax, 0x10ce0
call fcn.004a7170
mov eax, dword [esp + 0x10cf0]
push ebx
push ebp
mov ebp, dword [esp + 0x10cec]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x14], edi
test eax, eax
je 0x42383c
lea edx, [esp + 0xe0]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x423800
mov eax, dword [esp + 0x10d04]
mov dword [esp + 0x1c], eax
test eax, eax
je 0x423854
mov ecx, dword [esp + 0x1c]
lea ebp, [ecx + 2]
movzx eax, word [ebp]
cmp eax, 0x20
je 0x423837
cmp eax, 9
jne 0x423f12
add ebp, 2
jmp 0x423825
cmp byte [esp + 0x10cf8], 3
jne 0x423886
xor eax, eax
mov word [esp + 0xe0], ax
mov dword [esp + 0x1c], eax
mov byte [esp + 0x13], 0
mov dx, word [0x4d4a28]
mov byte [esp + 0x12], 0
cmp word [ebp], dx
jne 0x423f77
movzx eax, word [ebp + 2]
add ebp, 2
cmp eax, 0x20
je 0x42386f
cmp eax, 9
jne 0x42473c
jmp 0x42386f
push 6
push str.Global
push ebp
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x4238b9
mov ecx, dword [0x4d4b04]
mov ebx, dword [ecx + 0xb4]
neg ebx
sbb ebx, ebx
and ebx, 0xffffff80
add ebx, 0xc1
mov dword [esp + 0x18], ebx
jmp 0x423915
mov edx, dword [0x4d4b04]
cmp dword [edx + 0xb4], 0
je 0x423ee8
push 5
push str.Local
push ebp
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x4238f1
mov dword [esp + 0x18], 0x42
mov ebx, dword [esp + 0x18]
lea eax, [ebp + 0xa]
jmp 0x423918
push 6
push str.Static
push ebp
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x423ee8
mov dword [esp + 0x18], 0x62
mov ebx, dword [esp + 0x18]
lea eax, [ebp + 0xc]
movzx ecx, word [eax]
test cx, cx
je 0x423e6b
cmp ecx, 0x20
je 0x423932
cmp ecx, 9
jne 0x423ee8
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x20
je 0x423941
cmp eax, 9
jne 0x423946
add esi, 2
jmp 0x423934
cmp word [esi], 0
je 0x423e6b
movzx ebp, word [esi + 2]
xor eax, eax
push eax
push esi
mov word [esi + 2], ax
call fcn.00482f90
add esp, 8
mov word [esi + 2], bp
test eax, eax
je 0x423ee1
cmp byte [edi + 0x48], 0
mov ebp, dword [0x4d4b04]
je 0x4239c9
mov eax, dword [ebp + 0xb4]
cmp byte [eax + 0x3c], 0
jne 0x4239c9
cmp ebx, 0x62
je 0x423999
cmp ebx, 0x42
setne cl
add cl, 0x41
mov byte [eax + 0x3c], cl
mov eax, dword [edi + 4]
test eax, eax
je 0x423a27
mov al, byte [eax]
cmp al, 9
jb 0x4239ae
cmp al, 0x20
jbe 0x4239c2
cmp al, 0x21
je 0x4239c2
cmp al, 0x69
jb 0x4239ba
cmp al, 0x6b
jbe 0x4239c2
cmp al, 0x6f
jb 0x423a27
cmp al, 0x71
ja 0x423a27
mov byte [esp + 0x12], 1
jmp 0x423a2c
mov eax, dword [ebp + 0xb4]
test eax, eax
je 0x423999
movzx edx, byte [eax + 0x3c]
cmp ebx, edx
jne 0x423999
cmp ebx, 0x41
jne 0x423a01
mov eax, dword [esp + 0x10cf4]
push eax
push str.Global_variables_must_not_be_declared_in_this_function.
mov ecx, edi
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
cmp ebx, 0x42
jne 0x423999
mov ecx, dword [esp + 0x10cf4]
push ecx
push str.Local_variables_must_not_be_declared_in_this_function.
mov ecx, edi
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov byte [esp + 0x12], 0
cmp word [esi], 0
mov byte [esp + 0x13], 0
mov edi, esi
je 0x423e98
lea ecx, [ecx]
mov ebx, str.___t:
mov eax, edi
call fcn.0040541e
mov dword [esp + 0x20], eax
test eax, eax
jne 0x423a76
mov eax, edi
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x423a60
sub eax, edx
sar eax, 1
lea eax, [edi + eax*2]
mov dword [esp + 0x20], eax
mov esi, eax
sub esi, edi
sar esi, 1
cmp dword [ebp + 0xb4], 0
je 0x423b6a
mov edx, dword [0x4d4b04]
mov eax, dword [edx + 0xb4]
xor ebp, ebp
cmp dword [eax + 0x10], ebp
jle 0x423ad3
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.0047f290
add esp, 8
test eax, eax
je 0x423dab
mov edx, dword [0x4d4b04]
mov eax, dword [edx + 0xb4]
inc ebp
add ebx, 0x10
cmp ebp, dword [eax + 0x10]
jl 0x423aa0
mov ecx, dword [esp + 0x14]
push 0
push 2
push 0
push esi
push edi
call fcn.0042cd50
mov ebp, eax
mov eax, dword [esp + 0x18]
test ebp, ebp
je 0x423b0b
movzx ecx, byte [ebp + 0x16]
xor ecx, eax
test ecx, 0xffffffbf
jne 0x423dc7
cmp eax, 0x62
je 0x423dc7
xor ebp, ebp
cmp eax, 0x41
je 0x423b62
mov edx, dword [0x4d4b04]
mov eax, dword [edx + 0xb4]
xor ebx, ebx
cmp dword [eax + 0x34], ebx
jle 0x423b62
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.0047f290
add esp, 8
test eax, eax
je 0x423b51
mov edx, dword [0x4d4b04]
mov eax, dword [edx + 0xb4]
inc ebx
cmp ebx, dword [eax + 0x34]
jl 0x423b23
jmp 0x423b62
mov eax, dword [0x4d4b04]
mov ecx, dword [eax + 0xb4]
mov edx, dword [ecx + 0x24]
mov ebp, dword [edx + ebx*4]
test ebp, ebp
jne 0x423dc7
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
push ebx
push esi
push edi
call fcn.0042ccf0
mov ebp, eax
test ebp, ebp
je 0x423e5c
mov al, byte [ebp + 0x17]
test al, al
jne 0x423b91
mov eax, dword [ebp + 0xc]
mov al, byte [eax + 0x17]
cmp al, 1
jne 0x423e27
push 0xffffffffffffffff
push esi
mov eax, 0x4b6374
mov ecx, edi
call fcn.0047f290
add esp, 8
test eax, eax
je 0x423e27
mov ecx, dword [0x4d4b04]
cmp ebx, 0x41
jne 0x423be7
mov edx, dword [ecx + 0xb4]
cmp dword [edx + 0x34], 0x7d0
jge 0x423def
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 0x423bf2
cmp ebx, 0xc1
jne 0x423bf2
mov byte [ebp + 0x16], bl
mov eax, dword [esp + 0x20]
call fcn.0040ebd0
movzx ecx, word [eax]
cmp ecx, 0x3d
ja case.0x423c0a.1
movzx ecx, byte [ecx + 0x4255d4]
jmp dword [ecx*4 + 0x4255c0]
add eax, 2
call fcn.0040ebd0
mov ebx, dword [esp + 0x14]
mov edi, eax
jmp 0x423d96
cmp word [eax + 2], 0x3d
jne 0x423e0b
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 0x423ce5
test dl, dl
jne case.0x423cf1.1
test ebp, ebp
jg case.0x423cf1.1
lea ebp, [eax + esi*2]
lea eax, [ebp - 2]
mov edx, edi
call fcn.0040ebf0
mov esi, eax
movzx edx, word [esi + 2]
xor eax, eax
mov dword [esp + 0x20], edx
mov word [esi + 2], ax
test bl, bl
je 0x423cca
lea edx, [esp + 0x8ce8]
mov eax, edi
sub edx, edi
lea esp, [esp]
movzx ecx, word [eax]
mov word [eax + edx], cx
add eax, 2
test cx, cx
jne 0x423c90
push 0
push 0xffffffffffffffff
push 1
push 1
push 0x4b2b38
lea ecx, [esp + 0x8cfc]
push 0x4b2b40
push ecx
xor eax, eax
call fcn.0047f990
add esp, 0x1c
lea edi, [esp + 0x8ce8]
cmp dword [esp + 0x18], 0x62
mov ebx, dword [esp + 0x14]
jne 0x423d19
mov byte [ebx + 0x49], 1
jmp 0x423d42
add eax, 2
mov bl, 1
jmp 0x423c34
cmp ecx, 0x7d
ja case.0x423cf1.1
movzx ecx, byte [ecx + 0x425628]
jmp dword [ecx*4 + 0x425614]
test dl, dl
sete dl
inc esi
jmp 0x423c40
test dl, dl
jne case.0x423cf1.1
inc ebp
inc esi
jmp 0x423c40
test dl, dl
jne case.0x423cf1.1
dec ebp
inc esi
jmp 0x423c40
cmp byte [esp + 0x12], 0
je 0x423d42
cmp byte [esp + 0x13], 0
jne 0x423d42
push 0
push 0
push 0
push 0x75
push ebx
call fcn.00425d20
test eax, eax
je 0x423e5c
mov byte [esp + 0x13], 1
push 0
push 0
push 0
push 0
push 0
push 0
push edi
mov ecx, ebx
call fcn.004237d0
test eax, eax
je 0x423e5c
cmp dword [esp + 0x18], 0x62
jne 0x423d78
mov eax, dword [ebx + 4]
mov byte [ebx + 0x49], 0
movzx edx, byte [eax]
mov dword [eax + 0xc], edx
mov eax, dword [ebx + 4]
mov byte [eax], 8
mov cx, word [esp + 0x20]
mov word [esi + 2], cx
cmp word [ebp], 0x2c
jne 0x423d94
lea eax, [ebp + 2]
call fcn.0040ebd0
mov edi, eax
jmp 0x423d96
mov edi, ebp
cmp word [edi], 0
je 0x423e43
mov ebp, dword [0x4d4b04]
jmp 0x423a40
mov ecx, dword [esp + 0x14]
push edi
push str.Parameters_must_not_be_declared.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
test byte [ebp + 0x16], 0x40
mov eax, str.Duplicate_declaration.
jne 0x423dd7
mov eax, str.Declaration_conflicts_with_existing_var.
mov ecx, dword [esp + 0x14]
push edi
push eax
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
push edi
push str.Too_many_declarations.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
push edi
push str.This_line_does_not_contain_a_recognized_action.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
push edi
push str.Built_in_variables_must_not_be_declared.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
cmp byte [esp + 0x13], 0
je 0x423e98
push 0
push 0
push 0
push 0x76
push ebx
call fcn.00425d20
test eax, eax
jne 0x423e98
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
cmp byte [edi + 0x48], 0
je 0x423ec7
mov edx, dword [0x4d4b04]
mov ecx, dword [edx + 0xb4]
mov al, byte [ecx + 0x3c]
test al, al
jne 0x423eaa
cmp ebx, 0x42
jne 0x423e95
mov dword [esp + 0x18], 0x46
mov ebx, dword [esp + 0x18]
mov byte [ecx + 0x3c], bl
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
cmp al, 0x46
jne 0x423ec7
cmp ebx, 0x62
jne 0x423ec7
mov byte [ecx + 0x3c], 0x66
lea eax, [ebx - 0x61]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
push ebp
push str.This_line_does_not_contain_a_recognized_action.
mov ecx, edi
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ebp, dword [esp + 0x10cf4]
push 1
push edi
mov edx, ebp
lea ebx, [esp + 0xe8]
call fcn.00425a40
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x42381e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
movzx eax, word [ecx + 2]
cmp ax, word [0x4d4a28]
je 0x423f6d
test ax, ax
je 0x423f6d
cmp eax, 0x20
je 0x423f6d
cmp eax, 9
je 0x423f6d
cmp eax, 0x28
jne 0x423854
lea eax, [esp + 0xe0]
push 0x4b63c8
push eax
call fcn.00498d39
add esp, 8
test eax, eax
je 0x423f6d
lea ecx, [esp + 0xe0]
push str.WHILE
push ecx
call fcn.00498d39
add esp, 8
test eax, eax
jne 0x423854
mov byte [esp + 0x13], 1
jmp 0x423859
cmp byte [esp + 0x10cf8], 0
jne 0x4249b6
cmp byte [esp + 0x10cfc], 0
jne case.0x424482.39
cmp byte [esp + 0x13], 0
je 0x424460
lea eax, [esp + 0xe0]
push 0x4b63c8
push eax
call fcn.00498d39
add esp, 8
test eax, eax
jne 0x424460
movzx eax, word [ebp]
cmp eax, 0x28
je case.0x4240c9.34
cmp ax, word [0x4d4a2c]
jne 0x423fe7
movzx eax, word [ebp + 2]
cmp eax, 0x20
je case.0x4240c9.34
cmp eax, 9
je case.0x4240c9.34
mov dx, word [0x4d4a28]
mov ecx, 0x20
lea ebx, [esp + 0x38]
mov eax, ebp
mov word [esp + 0x38], cx
mov word [esp + 0x3a], dx
mov dword [esp + 0x3c], 0x90028
mov dword [esp + 0x40], 0x3e003c
mov dword [esp + 0x44], 0x3d003a
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.0040541e
test eax, eax
je 0x424065
call fcn.0040ebd0
mov esi, eax
jmp 0x424083
mov eax, ebp
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x424070
sub eax, edx
sar eax, 1
lea esi, [ebp + eax*2]
push 3
push 0x4b370c
push ebp
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x4240b1
movzx eax, word [ebp + 6]
push eax
lea edx, [esp + 0x3c]
push edx
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x4240b1
mov bl, 1
jmp 0x4240b3
xor bl, bl
movzx eax, word [esi]
add eax, 0xffffffdf
cmp eax, 0x4d
ja case.0x4240c9.34
movzx eax, byte [eax + 0x4256cc]
jmp dword [eax*4 + 0x4256a8]
mov byte [esp + 0x10cf8], 0x12
jmp 0x424123
movzx eax, word [esi + 2]
sub eax, 0x3d
je 0x4240f4
dec eax
je 0x4241cd
mov byte [esp + 0x10cf8], 0x16
jmp 0x424123
mov edx, 0x20
mov byte [esp + 0x10cf8], 0x17
mov word [esi + 2], dx
jmp 0x424123
cmp word [esi + 2], 0x3d
jne 0x4241b5
mov byte [esp + 0x10cf8], 0x15
mov eax, 0x20
mov word [esi + 2], ax
mov ax, word [0x4d4a28]
mov word [esi], ax
mov al, byte [esp + 0x10cf8]
cmp al, 0xf
je 0x42413f
cmp al, 0x10
jne 0x42473c
mov eax, 0x4b64a8
mov ecx, esi
call fcn.0047f5a0
mov esi, eax
test esi, esi
je 0x424194
movzx ecx, word [esi - 2]
push ecx
push 0x4b3a64
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x424181
movzx edx, word [esi + 6]
push edx
push 0x4b3a64
call fcn.00499cc9
add esp, 8
test eax, eax
jne 0x42444a
lea ecx, [esi + 6]
mov eax, 0x4b64a8
call fcn.0047f5a0
mov esi, eax
test esi, esi
jne 0x424151
mov eax, dword [esp + 0x10cf4]
push eax
push str.BETWEEN_requires_the_word_AND.
mov ecx, edi
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov byte [esp + 0x10cf8], 0x14
jmp 0x424123
cmp word [esi + 2], 0x3d
jne case.0x4240c9.34
mov ecx, 0x20
mov byte [esp + 0x10cf8], 0x13
mov word [esi + 2], cx
jmp 0x424123
test bl, bl
jne case.0x4240c9.34
push 7
push str.between
push esi
call fcn.004994ba
add esp, 0xc
test eax, eax
jne case.0x4240c9.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 + 0x10cf8], 0xf
mov word [esi + 0xc], ax
jmp 0x424123
test bl, bl
jne case.0x4240c9.34
push 8
push str.contains
push esi
call fcn.004994ba
add esp, 0xc
test eax, eax
jne case.0x4240c9.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 + 0x10cf8], 0xb
mov dword [esi + 0xc], eax
jmp 0x424123
mov ax, word [esi + 2]
call fcn.0040eba0
movzx eax, ax
add eax, 0xffffffb2
cmp eax, 0x25
ja case.0x4240c9.34
movzx edx, byte [eax + 0x425728]
jmp dword [edx*4 + 0x42571c]
test bl, bl
je 0x42429a
mov byte [esp + 0x10cf8], 0x11
jmp 0x4242f6
lea eax, [esi + 4]
call fcn.0040ebd0
push 3
mov ebx, eax
push 0x4b719c
push ebx
call fcn.004994ba
add esp, 0xc
test eax, eax
je 0x4242c2
mov byte [esp + 0x10cf8], 0xd
jmp 0x4242df
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [ebx], eax
mov byte [esp + 0x10cf8], 0xe
mov word [ebx + 4], ax
cmp byte [esp + 0x10cf8], 0x11
mov edx, 0x20
mov word [esi + 2], dx
jne 0x424123
mov eax, ebp
lea edx, [eax + 2]
jmp 0x424300
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x424300
sub eax, edx
sar eax, 1
cmp word [ebp + eax*2 - 2], 0x7b
lea eax, [ebp + eax*2 - 2]
jne 0x4249b6
xor edx, edx
mov word [eax], dx
sub eax, ebp
sar eax, 1
mov esi, ebp
call fcn.0041a040
mov byte [esp + 0x12], 1
jmp 0x4249b6
test bl, bl
je 0x424347
mov byte [esp + 0x10cf8], 0x11
jmp 0x4242f6
mov byte [esp + 0x10cf8], 9
jmp 0x42411a
push 3
push 0x4b719c
push esi
call fcn.004994ba
add esp, 0xc
test eax, eax
jne case.0x4240c9.34
movzx ecx, word [esi + 6]
lea eax, [esi + 6]
cmp ecx, 0x20
je 0x424381
cmp ecx, 9
jne case.0x4240c9.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.0040ebd0
push 2
mov ebx, eax
push 0x4b2b00
push ebx
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x4243cf
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov byte [esp + 0x10cf8], 0xa
mov dword [ebx], eax
jmp 0x424123
push 7
push str.between
push ebx
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x42440b
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov byte [esp + 0x10cf8], 0x10
mov word [ebx + 0xc], ax
jmp 0x424123
push 8
push str.contains
push ebx
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x424123
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov byte [esp + 0x10cf8], 0xc
mov dword [ebx + 0xc], eax
jmp 0x424123
mov cx, word [0x4d4a28]
mov word [esi], cx
mov dword [esi + 2], 0x200020
jmp 0x42473c
movzx ecx, word [ebp]
mov si, word [0x4d4a28]
movzx eax, word [ebp + 2]
lea edx, [ecx - 0x26]
cmp edx, 0x56
ja case.0x424482.39
movzx edx, byte [edx + 0x425778]
jmp dword [edx*4 + 0x425750]
mov byte [esp + 0x10cf8], 1
jmp 0x42471e
cmp eax, 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 2
jmp 0x4246ab
cmp word [esp + 0xe0], 0x2b
jne 0x4244c6
cmp word [esp + 0xe2], 0
jne 0x4244c6
mov cl, 1
jmp 0x4244d1
xor cl, cl
cmp eax, 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 4
test cl, cl
je 0x424693
lea eax, [ebp + 2]
call fcn.0040ebd0
mov ebx, str.__t____:_______._
mov ebp, eax
call fcn.0040541e
test eax, eax
jne 0x4245ba
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x424502
mov edi, dword [esp + 0x10cf4]
sub eax, edx
sar eax, 1
mov esi, eax
lea eax, [esi + esi + 2]
push eax
push ebp
push edi
call fcn.0049a0d0
mov cx, word [0x4d4a28]
mov word [edi + esi*2], cx
add esp, 0xc
mov dword [edi + esi*2 + 2], 0x31
jmp 0x424735
cmp word [esp + 0xe0], 0x2d
jne 0x424566
cmp word [esp + 0xe2], 0
jne 0x424566
mov cl, 1
mov byte [esp + 0x10cf8], 5
jmp 0x4244d9
xor cl, cl
cmp eax, 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 5
jmp 0x4244d9
cmp eax, 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 6
jmp 0x4246ab
cmp eax, 0x3d
jne 0x4245a6
mov byte [esp + 0x10cf8], 7
jmp 0x4246ab
cmp eax, 0x2f
jne case.0x424482.39
cmp word [ebp + 4], 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 3
jmp 0x424735
cmp eax, 0x3d
jne case.0x424482.39
mov byte [esp + 0x10cf8], 3
jmp 0x424735
cmp ax, cx
jmp 0x4245a9
cmp eax, 0x3d
je 0x4245ba
lea esi, [ebp + 2]
mov eax, esi
call fcn.0043b610
cmp word [eax], 0x28
je 0x4245ba
cmp eax, esi
je case.0x424482.39
call fcn.0040ebd0
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x5b
je 0x4245ba
test ax, ax
je 0x4245ba
cmp word [esi + 2], 0x3d
lea ebx, [esi + 2]
jne 0x42462f
push eax
push str.:__.
call fcn.00499cc9
add esp, 8
test eax, eax
jne 0x4245ba
movzx eax, word [esi]
cmp word [ebx], ax
jne 0x424669
push eax
push 0x4b71f8
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x424654
cmp word [esi + 4], 0x3d
je 0x4245ba
movzx eax, word [esi]
cmp eax, 0x2b
je 0x4245ba
cmp eax, 0x2d
je 0x4245ba
cmp ax, 0x2e
jne case.0x424482.39
mov esi, ebx
mov eax, esi
call fcn.0043b610
cmp word [eax], 0x28
jne 0x4245f7
mov byte [esp + 0x10cf8], 3
jmp 0x424735
cmp byte [esp + 0x10cf8], 3
je 0x424735
cmp byte [esp + 0x10cf8], 1
je 0x424714
xor cl, cl
xor ebx, ebx
mov edx, 2
jmp 0x4246c0
movzx eax, word [ebp + edx*2]
cmp ax, si
jne 0x424784
test cl, cl
jne case.0x424790.1
test ebx, ebx
jg case.0x424790.1
cmp word [ebp + edx*2], 0
je 0x424714
mov al, byte [esp + 0x10cf8]
cmp al, 4
je 0x4246f9
cmp al, 5
jne 0x4245ba
lea eax, [ebp + edx*2 + 2]
call fcn.0040ebd0
mov ebx, str.__t____:_______._
call fcn.0040541e
test eax, eax
jne 0x4245ba
cmp byte [esp + 0x10cf8], 3
je 0x424735
cmp byte [esp + 0x10cf8], 1
mov word [ebp], si
je 0x424735
mov ecx, 0x20
mov word [ebp + 2], cx
mov ebp, dword [esp + 0x10cf4]
cmp byte [esp + 0x10cf8], 0
jne 0x4249b6
cmp byte [esp + 0x13], 0
je 0x4247b8
cmp byte [esp + 0x10cfc], 0
jne 0x4247b8
lea edi, [esp + 0xe0]
call fcn.00425b80
mov byte [esp + 0x10cf8], al
test al, al
jne 0x4249b6
call fcn.00425bc0
mov byte [esp + 0x10cfc], al
jmp 0x4247c6
cmp eax, 0x7d
ja case.0x424790.1
movzx eax, byte [eax + 0x4257e4]
jmp dword [eax*4 + 0x4257d0]
test cl, cl
sete cl
inc edx
jmp 0x4246c0
test cl, cl
jne case.0x424790.1
inc ebx
inc edx
jmp 0x4246c0
test cl, cl
jne case.0x424790.1
dec ebx
inc edx
jmp 0x4246c0
cmp byte [esp + 0x10cf8], 0
jne 0x4249b6
cmp byte [esp + 0x10cfc], 0
jne 0x4249b6
movzx eax, word [ebp]
cmp eax, 0x7b
jne 0x42486b
lea edi, [esp + 0xe0]
call fcn.00425b80
movzx ecx, al
add ecx, 0xffffffdf
cmp ecx, 0x50
ja case.0x4247ff.34
movzx edx, byte [ecx + 0x425870]
jmp dword [edx*4 + 0x425864]
cmp word [ebp + 2], 0
mov byte [esp + 0x12], 1
jne case.0x4247ff.34
mov byte [esp + 0x10cf8], al
test al, al
jne 0x4249b6
movzx ecx, word [ebp]
push ecx
push str.__t____:_______._
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x42493b
movzx eax, word [ebp]
cmp eax, 0x2b
je 0x42484d
cmp eax, 0x2d
jne 0x42490f
cmp word [ebp + 2], ax
jne 0x42490f
cmp word [ebp + 4], 0
je 0x4248d3
mov byte [esp + 0x10cf8], 3
jmp 0x4248f6
cmp eax, 0x3a
jne case.0x4247ff.34
lea eax, [esp + 0xe0]
push str.Default
push eax
call fcn.00498d39
add esp, 8
test eax, eax
jne case.0x4247ff.34
mov esi, dword [esp + 0x14]
push eax
push eax
push eax
push 0x74
push esi
call fcn.00425d20
test eax, eax
je 0x423e5c
lea eax, [ebp + 2]
call fcn.0040ebd0
cmp word [eax], 0
je 0x423e98
push 0
push 0
push 0
push 0
push 0
push 0
push eax
mov ecx, esi
call fcn.004237d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov dx, word [0x4d4a28]
cmp eax, 0x2b
setne al
add al, 4
mov byte [esp + 0x10cf8], al
mov eax, 0x31
mov word [ebp], dx
mov word [ebp + 2], ax
cmp byte [esp + 0x10cf8], 0
mov esi, dword [esp + 0x10cf4]
mov ebp, esi
jne 0x4249b6
jmp 0x424942
cmp eax, 0x3f
je 0x424932
push 0x3f
push ebp
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x42493b
push 0x3a
push eax
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x42493b
mov ebp, dword [esp + 0x10cf4]
jmp 0x4249ae
mov esi, dword [esp + 0x10cf4]
movzx eax, word [ebp]
cmp eax, 0x28
je 0x4249ac
cmp eax, 0x5b
je 0x4249ac
cmp word [esi], 0x28
je 0x4249ac
push 3
push 0x4b7234
push esi
call fcn.004994ba
add esp, 0xc
test eax, eax
jne 0x424978
movzx eax, word [esi + 6]
cmp eax, 0x20
je 0x4249ac
cmp eax, 9
je 0x4249ac
push 0x4b64e8
push esi
call fcn.0049adb3
add esp, 8
test eax, eax
mov eax, str.Invalid_hotkey.
jne 0x424994
mov eax, str.This_line_does_not_contain_a_recognized_action.
mov ecx, dword [esp + 0x14]
push esi
push eax
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ebp, esi
mov byte [esp + 0x10cf8], 3
movzx edi, byte [esp + 0x10cf8]
lea eax, [edi - 0x21]
mov dword [esp + 0x28], 0
cmp eax, 0x53
ja case.0x4249d9.34
movzx ecx, byte [eax + 0x4258d4]
jmp dword [ecx*4 + 0x4258c4]
cmp word [ebp], 0x7b
jne case.0x4249d9.34
jmp 0x4249f4
cmp word [ebp], 0x7b
jne 0x424a03
lea eax, [ebp + 2]
mov byte [esp + 0x12], 1
call fcn.0040ebd0
mov ebp, eax
cmp word [ebp], 0
je case.0x4249d9.34
mov dword [esp + 0x28], ebp
sub ebp, 2
xor edx, edx
mov word [ebp], dx
jmp case.0x4249d9.34
xor ebx, ebx
lea edx, [ebx + 0x3d]
movzx eax, word [ebp + ebx*2]
cmp eax, 0x3a
jne 0x424a36
cmp word [ebp + ebx*2 + 2], dx
jne case.0x424a42.0
cmp eax, 0x7d
ja case.0x424a42.1
movzx eax, byte [eax + 0x425948]
jmp dword [eax*4 + 0x425928]
movzx eax, word [ebp + ebx*2 + 2]
inc ebx
test ax, ax
je case.0x424a42.0
cmp eax, 0x22
jne case.0x424a42.34
inc ebx
jmp 0x424a25
push 0
inc ebx
push ebx
push 0x3a
jmp 0x424a83
mov eax, 0x29
jmp 0x424a7e
mov eax, 0x5d
jmp 0x424a7e
mov eax, 0x7d
push 0
inc ebx
push ebx
push eax
push ebp
call fcn.00481770
mov ebx, eax
add esp, 0x10
cmp word [ebp + ebx*2], 0
je 0x424aa1
inc ebx
jmp 0x424a25
cmp word [ebp + ebx*2], 0
jne 0x424ac4
mov ecx, dword [esp + 0x10cf4]
push ecx
mov ecx, dword [esp + 0x18]
push str.Missing__:_
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
xor edx, edx
or eax, 0xffffffff
mov esi, ebp
mov word [ebp + ebx*2], dx
call fcn.0041a040
lea eax, [ebp + ebx*2 + 2]
call fcn.0040ebd0
cmp word [eax], 0
mov dword [esp + 0x28], eax
jne case.0x4249d9.34
mov dword [esp + 0x28], 0
mov bl, byte [esp + 0x10cf8]
test bl, bl
je 0x424b11
lea eax, [edi*8]
sub eax, edi
lea ecx, [eax*2 + 0x4d4b18]
mov dword [esp + 0x2c], ecx
jmp 0x424b2d
movzx eax, byte [esp + 0x10cfc]
lea edx, [eax*8]
sub edx, eax
lea eax, [edx*2 + 0x4d5798]
mov dword [esp + 0x2c], eax
push 0x8002
lea ecx, [esp + 0xce4]
push 0
push ecx
call fcn.004a3c50
mov edx, dword [esp + 0x10d14]
add esp, 0xc
test edx, edx
je 0x424b84
mov ecx, dword [esp + 0x10d0c]
mov eax, ebp
sub eax, dword [esp + 0x1c]
sar eax, 1
sub ecx, eax
test ecx, ecx
jle 0x424c49
add ecx, ecx
push ecx
lea edx, [edx + eax*2]
push edx
lea eax, [esp + 0xce8]
push eax
call fcn.004a3100
add esp, 0xc
jmp 0x424c49
xor esi, esi
cmp word [ebp + esi*2], 0
mov ax, word [0x4d4a30]
je 0x424ba4
cmp word [ebp + esi*2], ax
je 0x424ba4
inc esi
cmp word [ebp + esi*2], 0
jne 0x424b94
cmp word [ebp + esi*2], 0
lea ebx, [ebp + esi*2]
je 0x424c42
movzx eax, word [ebx + 2]
lea ecx, [ebx + 2]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x424bca.99
movzx edx, byte [eax + 0x4259e8]
jmp dword [edx*4 + 0x4259c8]
mov eax, 7
jmp 0x424c09
mov edx, 8
mov word [ecx], dx
jmp case.0x424bca.99
mov eax, 0xc
jmp 0x424c09
mov edx, 0xa
mov word [ecx], dx
jmp case.0x424bca.99
mov eax, 0xd
jmp 0x424c09
mov edx, 9
mov word [ecx], dx
jmp case.0x424bca.99
mov eax, 0xb
mov word [ecx], ax
mov eax, ecx
lea edi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x424c11
sub eax, edi
sar eax, 1
lea edx, [eax + eax + 2]
push edx
push ecx
push ebx
call fcn.004a3100
mov eax, 1
add esp, 0xc
mov word [esp + esi*2 + 0xce0], ax
inc esi
jmp 0x424b86
mov bl, byte [esp + 0x10cf8]
mov dword [esp + 0x18], 0
cmp bl, 0x22
jne 0x424dea
xor ebx, ebx
mov edi, 1
mov dword [esp + 0x24], edi
cmp word [ebp], bx
je 0x424ed4
nop
cmp edi, 1
jle 0x424c76
inc ebx
movzx eax, word [ebp + ebx*2]
cmp eax, 0x20
je 0x424c75
cmp eax, 9
je 0x424c75
lea edx, [ebx + ebx]
mov cx, word [edx + ebp]
lea eax, [edx + ebp]
cmp cx, word [0x4d4a2c]
jne 0x424cde
cmp word [esp + edx + 0xce0], 0
jne 0x424cde
movzx ecx, word [eax + 2]
cmp ecx, 0x20
je 0x424cb1
cmp ecx, 9
jne 0x424cde
cmp edi, 3
jge 0x424ed4
movzx ecx, word [0x4d4a28]
lea edx, [esp + 0xce0]
push edx
push ecx
lea eax, [ebx + 2]
mov ecx, ebp
call fcn.00481670
add esp, 8
mov esi, eax
jmp 0x424d5b
cmp word [eax], 0
mov esi, ebx
je 0x424d12
mov di, word [0x4d4a28]
mov ecx, eax
nop
cmp word [ecx], di
jne 0x424d00
cmp word [esp + edx + 0xce0], 0
je 0x424d0e
inc esi
lea edx, [esi + esi]
cmp word [edx + ebp], 0
lea ecx, [edx + ebp]
jne 0x424cf0
mov edi, dword [esp + 0x24]
cmp edi, 1
jne 0x424d56
cmp word [ebp + esi*2], 0
je 0x424ed4
xor edx, edx
push edx
push edx
push edi
push edx
mov word [ebp + esi*2], dx
call fcn.0047f050
add esp, 0x10
test eax, eax
jne 0x424d3e
mov dword [esp + 0x18], edi
cmp dword [esp + 0x18], 0
mov ax, word [0x4d4a28]
mov word [ebp + esi*2], ax
jne 0x424ed4
jmp 0x424d5b
cmp edi, 4
je 0x424d73
inc edi
cmp word [ebp + esi*2], 0
mov ebx, esi
mov dword [esp + 0x24], edi
jne 0x424c70
jmp 0x424ed4
push 0
push 1
lea edi, [ebp + ebx*2]
push 1
push 0
mov eax, edi
call fcn.0047f050
add esp, 0x10
test eax, eax
jne 0x424ed4
cmp word [ebp + esi*2], ax
jne 0x424ddd
mov ax, word [0x4d4a2c]
cmp word [edi], ax
jne 0x424ddd
cmp word [esp + ebx*2 + 0xce0], 0
jne 0x424ddd
movzx ecx, ax
push ecx
add edi, 2
push edi
call fcn.00499cc9
add esp, 8
test eax, eax
je 0x424ddd
push 0
push 1
push 1
push 0
add eax, 2
call fcn.0047f050
add esp, 0x10
test eax, eax
jne 0x424ed4
mov dword [esp + 0x18], 3
jmp 0x424ed4
cmp bl, 0x6a
jne 0x424ed4
cmp word [ebp], 0
mov esi, ebp
je 0x424e48
lea esp, [esp]
movzx eax, word [esi]
cmp eax, 0x20
je 0x424e0d
cmp eax, 9
jne 0x424e3f
movzx edx, word [esi + 2]
push edx
call fcn.0049b813
add esp, 4
cmp eax, 0x69
jne 0x424e3f
movzx eax, word [esi + 4]
push eax
call fcn.0049b813
add esp, 4
cmp eax, 0x6e
jne 0x424e3f
movzx eax, word [esi + 6]
cmp eax, 0x20
je 0x424e48
cmp eax, 9
je 0x424e48
add esi, 2
cmp word [esi], 0
jne 0x424e00
cmp word [esi], 0
mov dx, word [0x4d4a28]
jne 0x424e78
mov ecx, dword [esp + 0x10cf4]
push ecx
mov ecx, dword [esp + 0x18]
push str.This__For__is_missing_its__in_.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov eax, esi
sub eax, ebp
sar eax, 1
mov ecx, 1
test eax, eax
jle 0x424e94
cmp word [ebp + eax*2], dx
jne 0x424e8f
inc ecx
dec eax
test eax, eax
jg 0x424e87
mov word [esi + 2], dx
cmp ecx, 1
jle 0x424ed0
cmp ecx, 2
jle 0x424ec5
mov edx, dword [esp + 0x10cf4]
mov ecx, dword [esp + 0x14]
push edx
push str.Syntax_error_or_too_many_variables_in__For__statement.
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov eax, 0x20
mov word [esi + 4], ax
jmp 0x424ed4
mov word [esi + 4], dx
mov eax, dword [esp + 0x18]
xor ebx, ebx
mov byte [esp + 0x24], 0
mov byte [esp + 0x1c], 0
mov dword [esp + 0x20], ebx
cmp eax, ebx
je 0x424ef2
mov dword [esp + 0x30], eax
jmp 0x424efe
mov ecx, dword [esp + 0x2c]
movsx edx, byte [ecx + 5]
mov dword [esp + 0x30], edx
xor esi, esi
mov dword [esp + 0x18], ebx
cmp word [ebp], bx
je 0x4250b4
mov edi, edi
mov ebx, dword [esp + 0x18]
cmp ebx, dword [esp + 0x30]
jge 0x4250b4
cmp ebx, 2
jne 0x424f7a
mov al, byte [esp + 0x10cf8]
sub al, 0x18
cmp al, 3
ja 0x424f6b
mov ecx, dword [esp + 0x14]
push 0
lea edx, [ebp + esi*2]
push ecx
lea ebx, [esp + 0x2e8]
call fcn.00425a40
mov dword [esp + 0x20], eax
test eax, eax
je 0x424f6b
mov edi, ebx
call fcn.00425b80
mov byte [esp + 0x24], al
test al, al
jne 0x4250a1
call fcn.00425bc0
mov byte [esp + 0x1c], al
cmp byte [esp + 0x1c], 0
jne 0x4250a1
mov ebx, dword [esp + 0x18]
lea ecx, [esp + ebx*4 + 0x38]
lea eax, [ebp + esi*2]
lea edx, [esp + ebx*4 + 0x90]
mov dword [esp + 0x34], ecx
mov dword [ecx], eax
lea ecx, [esp + esi*2 + 0xce0]
mov dword [esp + 0x8c], edx
mov dword [edx], ecx
mov edx, dword [esp + 0x30]
dec edx
cmp ebx, edx
je 0x4250af
mov dx, word [0x4d4a2c]
cmp word [eax], dx
jne 0x424fcc
cmp word [ecx], 0
jne 0x424fcc
movzx eax, word [eax + 2]
cmp eax, 0x20
je 0x424ff0
cmp eax, 9
je 0x424ff0
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x18]
mov bl, byte [esp + 0x10cf8]
push 0xffffffffffffffff
add ecx, 7
lea edi, [esp + 0x3c]
call fcn.00425c00
add esp, 4
test al, al
je 0x425010
movzx ecx, word [0x4d4a28]
lea eax, [esp + 0xce0]
push eax
push ecx
mov eax, esi
mov ecx, ebp
call fcn.00481670
add esp, 8
mov esi, eax
jmp 0x42503c
movzx eax, word [ebp + esi*2]
test ax, ax
je 0x42503c
mov cx, word [0x4d4a28]
cmp ax, cx
jne 0x425031
cmp word [esp + esi*2 + 0xce0], 0
je 0x42503c
movzx eax, word [ebp + esi*2 + 2]
inc esi
test ax, ax
jne 0x425021
cmp word [ebp + esi*2], 0
je 0x42508b
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax]
xor edx, edx
mov word [ebp + esi*2], dx
mov edx, dword [esp + 0x34]
mov edi, dword [edx]
push ecx
call fcn.00419fd0
inc esi
lea edx, [esp + 0xce4]
add esp, 4
lea eax, [ebp + esi*2]
sub edx, ebp
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x42507e
cmp ecx, 9
jne 0x42508b
cmp word [edx + eax], 0
jne 0x42508b
inc esi
add eax, 2
jmp 0x425071
inc dword [esp + 0x18]
cmp word [ebp + esi*2], 0
jne 0x424f10
mov ebx, dword [esp + 0x18]
jmp 0x4250b4
mov ebx, dword [esp + 0x18]
lea eax, [ebp + esi*2]
mov dword [esp + 0x28], eax
jmp 0x4250b4
inc ebx
mov dword [esp + 0x18], ebx
mov ecx, dword [esp + 0x2c]
mov al, byte [ecx + 4]
movsx esi, al
cmp ebx, esi
jge 0x425118
cmp al, 1
mov eax, 0x4b7328
jg 0x4250d0
mov eax, 0x4af9bc
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx]
push esi
push eax
push str.__s__requires_at_least__d_parameter_s.
mov esi, 0x400
lea edi, [esp + 0x4f0]
call fcn.0047f1f0
add esp, 0x10
mov ecx, dword [esp + 0x10cf4]
push ecx
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x4e4]
push edx
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
xor eax, eax
cmp byte [esp + 0x10cf8], 0x74
jne 0x425126
mov esi, ebx
test esi, esi
jle 0x42513f
lea ebx, [ebx]
mov ecx, dword [esp + eax*4 + 0x38]
inc eax
cmp word [ecx], 0
je 0x425162
cmp eax, esi
jl 0x425130
mov cl, byte [esp + 0x10cfc]
test cl, cl
je case.default.0x42515b
movzx eax, cl
dec eax
cmp eax, 0xc
ja case.default.0x42515b
jmp dword [eax*4 + 0x425a00]
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [edx]
push eax
push str.__s__requires_that_parameter__u_be_non_blank.
mov esi, 0x400
lea edi, [esp + 0x4ec]
call fcn.0047f1f0
add esp, 0xc
jmp 0x4250f2
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x90]
push eax
mov dword [esp + ebx*4 + 0x3c], 0x4b73e0
mov dword [esp + ebx*4 + 0x94], 0
inc ebx
push ebx
lea ecx, [esp + 0x40]
push ecx
push 0x8b
push edx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x3c]
lea eax, [esp + 0x90]
push eax
push 2
lea ecx, [esp + 0x40]
push ecx
push 0x8b
mov ebx, 0x4b73e0
push edi
mov dword [esp + 0x50], ebx
mov dword [esp + 0xa8], 0
call fcn.00425d20
test eax, eax
je 0x423e5c
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x9c], edx
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x98], eax
mov dword [esp + 0xa0], eax
lea eax, [esp + 0x90]
push eax
push 5
mov dword [esp + 0x44], ecx
lea ecx, [esp + 0x40]
push ecx
push 0x8e
push edi
mov dword [esp + 0x54], esi
mov dword [esp + 0xa8], edx
mov dword [esp + 0x5c], ebx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x90]
push edx
push ebx
lea eax, [esp + 0x40]
push eax
push 1
push ecx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x90]
push edx
push ebx
lea eax, [esp + 0x40]
push eax
push 4
push ecx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x90]
push edx
push ebx
lea eax, [esp + 0x40]
push eax
push 5
push ecx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x90]
push edx
push ebx
lea eax, [esp + 0x40]
push eax
push 6
push ecx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x90]
push edx
push ebx
lea eax, [esp + 0x40]
push eax
push 7
push ecx
call fcn.00425d20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
mov byte [esp + 0x10cf8], 0x12
jmp case.default.0x42515b
mov byte [esp + 0x10cf8], 0x13
jmp case.default.0x42515b
mov byte [esp + 0x10cf8], 0x14
jmp case.default.0x42515b
mov byte [esp + 0x10cf8], 0x15
jmp case.default.0x42515b
mov byte [esp + 0x10cf8], 0x16
jmp case.default.0x42515b
mov byte [esp + 0x10cf8], 0x17
test ebx, ebx
je 0x425475
cmp byte [esp + 0x24], 0
jne 0x425475
cmp byte [esp + 0x1c], 0
jne 0x425475
mov al, byte [esp + 0x10cf8]
lea edx, [eax - 0x12]
cmp dl, 0xe
ja 0x425475
cmp al, 0x17
ja 0x4253c3
sub cl, 6
cmp cl, 5
ja 0x425475
mov eax, dword [esp + ebx*4 + 0x34]
mov dword [esp + 0x34], eax
sub eax, ebp
sar eax, 1
movzx ecx, word [ebp + eax*2]
test cx, cx
je 0x425475
mov dx, word [0x4d4a28]
cmp cx, dx
jne 0x4253f4
cmp word [esp + eax*2 + 0xce0], 0
je 0x425401
movzx ecx, word [ebp + eax*2 + 2]
inc eax
test cx, cx
jne 0x4253e4
jmp 0x425475
lea esi, [ebp + eax*2]
movzx ecx, word [ebp + eax*2 + 2]
inc eax
cmp ecx, 0x20
je 0x425405
cmp ecx, 9
je 0x425405
mov ecx, dword [esp + 0x14]
lea eax, [ebp + eax*2]
push 0
push ecx
mov edx, eax
lea ebx, [esp + 0x2e8]
mov dword [esp + 0x30], eax
call fcn.00425a40
mov dword [esp + 0x20], eax
test eax, eax
je 0x425469
mov edi, ebx
call fcn.00425b80
mov byte [esp + 0x24], al
test al, al
jne 0x425456
call fcn.00425bc0
mov byte [esp + 0x1c], al
test al, al
je 0x425469
xor edx, edx
mov word [esi], dx
mov esi, dword [esp + 0x34]
or eax, 0xffffffff
call fcn.0041a040
jmp 0x425471
mov dword [esp + 0x28], 0
mov ebx, dword [esp + 0x18]
mov al, byte [esp + 0x10cf8]
mov edi, dword [esp + 0x14]
cmp al, 0x69
je 0x425488
cmp al, 0x6b
jne 0x425497
cmp ebx, 1
jne 0x425497
mov ecx, dword [esp + 0x38]
cmp word [ecx], 0
jne 0x4254a7
cmp al, 0x6a
je 0x4254a3
cmp al, 0x70
je 0x4254a3
cmp al, 0x73
jne 0x425515
test ebx, ebx
je 0x425515
mov esi, dword [esp + ebx*4 + 0x34]
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4254b0
sub eax, edx
sar eax, 1
cmp word [esi + eax*2 - 2], 0x7b
jne 0x425515
xor edx, edx
mov word [esi + eax*2 - 2], dx
or eax, 0xffffffff
mov byte [esp + 0x12], 1
call fcn.0041a040
test eax, eax
jne 0x425515
mov al, byte [esp + 0x10cf8]
cmp al, 0x69
je 0x425513
cmp al, 0x70
je 0x425513
cmp al, 0x73
je 0x425513
mov eax, dword [esp + 0x10cf4]
push eax
push str.Parameter_1_required
mov ecx, edi
call fcn.0043a0d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c
xor ebx, ebx
mov eax, dword [esp + 0x10cf8]
lea ecx, [esp + 0x90]
push ecx
push ebx
lea edx, [esp + 0x40]
push edx
push eax
push edi
call fcn.00425d20
test eax, eax
je 0x423e5c
cmp byte [esp + 0x12], 0
je 0x425556
push 0
push 0
push 0
push 0x75
push edi
call fcn.00425d20
test eax, eax
je 0x423e5c
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x423e98
mov esi, dword [esp + 0x20]
test esi, esi
jne 0x425572
push esi
push esi
push esi
push esi
push esi
push esi
jmp 0x4255a8
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x425577
sub eax, edx
mov ecx, esi
sar eax, 1
push eax
sub ecx, ebp
sar ecx, 1
lea edx, [esp + ecx*2 + 0xce4]
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [esp + 0x2c]
push esi
lea eax, [esp + 0x2ec]
push eax
push ecx
push edx
mov ecx, edi
push ebx
call fcn.004237d0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10ce0
ret 0x1c