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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x10ce4
call fcn.004b9d80
mov eax, dword [ebp + 0x14]
push ebx
mov ebx, dword [sym.imp.MSVCR100.dll__wcsnicmp]
push esi
mov esi, ecx
push edi
mov dword [esp + 0x14], esi
test eax, eax
je 0x432a36
lea edx, [esp + 0xe0]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x432a00
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x1c], eax
test eax, eax
je 0x432a4e
lea edx, [eax + 2]
mov eax, edx
nop
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x432a31
cmp ecx, 9
jne 0x43316d
add eax, 2
jmp 0x432a20
cmp byte [ebp + 0xc], 3
jne 0x432ad8
xor eax, eax
mov word [esp + 0xe0], ax
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], eax
mov esi, eax
mov byte [esp + 0x13], 0
mov cx, word [0x4e4a48]
mov byte [esp + 0x12], 0
cmp word [esi], cx
jne 0x4331d7
movzx eax, word [esi + 2]
add esi, 2
cmp eax, 0x20
je 0x432a71
cmp eax, 9
je 0x432a71
mov dword [esp + 0xc], esi
cmp byte [ebp + 0xc], 0
jne 0x433aee
cmp byte [esp + 0x13], 0
je 0x43396d
cmp byte [ebp + 0x10], 0
jne 0x43396d
lea ecx, [esp + 0xe0]
push ecx
call fcn.00434b20
add esp, 4
mov byte [ebp + 0xc], al
test al, al
jne 0x433aee
lea edx, [esp + 0xe0]
push edx
call fcn.00434b60
add esp, 4
mov byte [ebp + 0x10], al
jmp 0x433977
mov edi, dword [ebp + 8]
push 6
push str.Global
push edi
call ebx
add esp, 0xc
test eax, eax
jne 0x432b0b
mov ecx, dword [0x4e4b24]
mov ebx, dword [ecx + 0xb4]
neg ebx
sbb ebx, ebx
and ebx, 0xffffff80
add ebx, 0xc1
mov dword [esp + 0x18], ebx
jmp 0x432b61
mov edx, dword [0x4e4b24]
cmp dword [edx + 0xb4], 0
je 0x433140
push 5
push str.Local
push edi
call ebx
add esp, 0xc
test eax, eax
jne 0x432b40
mov dword [esp + 0x18], 0x42
mov ebx, dword [esp + 0x18]
lea eax, [edi + 0xa]
jmp 0x432b64
push 6
push str.Static
push edi
call ebx
add esp, 0xc
test eax, eax
jne 0x433140
mov dword [esp + 0x18], 0x62
mov ebx, dword [esp + 0x18]
lea eax, [edi + 0xc]
movzx ecx, word [eax]
test cx, cx
je 0x4330d7
cmp ecx, 0x20
je 0x432b7e
cmp ecx, 9
jne 0x433140
call fcn.00413050
mov esi, eax
cmp word [esi], 0
je 0x4330d3
movzx edi, word [esi + 2]
xor eax, eax
push eax
push esi
mov word [esi + 2], ax
call fcn.004a3350
add esp, 8
mov word [esi + 2], di
test eax, eax
je 0x433140
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x20], 0
je 0x432c0b
mov edx, dword [0x4e4b24]
mov eax, dword [edx + 0xb4]
cmp byte [eax + 0x50], 0
jne 0x432c0b
cmp ebx, 0x62
je 0x432bdc
cmp ebx, 0x42
setne dl
add dl, 0x41
mov byte [eax + 0x50], dl
mov eax, dword [ecx + 0x610]
test eax, eax
je 0x432c5a
mov al, byte [eax]
cmp al, 9
jb 0x432bf0
cmp al, 0x20
jbe 0x432c04
cmp al, 0x21
je 0x432c04
cmp al, 0x69
jb 0x432bfc
cmp al, 0x6b
jbe 0x432c04
cmp al, 0x71
jb 0x432c5a
cmp al, 0x73
ja 0x432c5a
mov byte [esp + 0x23], 1
jmp 0x432c5f
mov eax, dword [0x4e4b24]
mov eax, dword [eax + 0xb4]
test eax, eax
je 0x432bdc
movzx edx, byte [eax + 0x50]
cmp ebx, edx
jne 0x432bdc
cmp ebx, 0x41
jne 0x432c3e
mov eax, dword [ebp + 8]
push eax
push str.Global_variables_must_not_be_declared_in_this_function.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
cmp ebx, 0x42
jne 0x432bdc
mov edx, dword [ebp + 8]
push edx
push str.Local_variables_must_not_be_declared_in_this_function.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov byte [esp + 0x23], 0
cmp word [esi], 0
mov edi, esi
mov byte [esp + 0x13], 0
mov dword [esp + 0xc], edi
je 0x433103
mov ebx, str.___t:
mov eax, edi
call fcn.00405590
mov dword [esp + 0x24], eax
test eax, eax
jne 0x432ca6
mov eax, edi
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x432c90
sub eax, edx
sar eax, 1
lea eax, [edi + eax*2]
mov dword [esp + 0x24], eax
mov esi, eax
mov eax, dword [0x4e4b24]
sub esi, edi
sar esi, 1
cmp dword [eax + 0xb4], 0
je 0x432da9
mov ecx, eax
mov eax, dword [ecx + 0xb4]
xor edi, edi
cmp dword [eax + 0x10], edi
jle 0x432d05
xor ebx, ebx
nop
mov edx, dword [eax + 0xc]
mov eax, dword [edx + ebx]
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0xc]
push 0xffffffffffffffff
push esi
call fcn.0049e660
add esp, 8
test eax, eax
je 0x43303b
mov ecx, dword [0x4e4b24]
mov eax, dword [ecx + 0xb4]
inc edi
add ebx, 0x10
cmp edi, dword [eax + 0x10]
jl 0x432cd0
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
push 0
push 2
push 0
push esi
push edx
call fcn.0043d1c0
mov edi, eax
mov eax, dword [esp + 0x18]
test edi, edi
je 0x432d41
movzx ecx, byte [edi + 0x16]
xor ecx, eax
test ecx, 0xffffffbf
jne 0x433057
cmp eax, 0x62
je 0x433057
xor edi, edi
cmp eax, 0x41
je 0x432da1
mov edx, dword [0x4e4b24]
mov eax, dword [edx + 0xb4]
xor ebx, ebx
cmp dword [eax + 0x30], ebx
jle 0x432da1
lea esp, [esp]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + ebx*4]
mov eax, dword [esp + 0xc]
mov ecx, dword [ecx + 0x18]
push esi
push 0xffffffffffffffff
call fcn.0049e660
add esp, 8
test eax, eax
je 0x432d90
mov edx, dword [0x4e4b24]
mov eax, dword [edx + 0xb4]
inc ebx
cmp ebx, dword [eax + 0x30]
jl 0x432d60
jmp 0x432da1
mov eax, dword [0x4e4b24]
mov ecx, dword [eax + 0xb4]
mov edx, dword [ecx + 0x1c]
mov edi, dword [edx + ebx*4]
test edi, edi
jne 0x433057
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
push ebx
push esi
push eax
call fcn.0043d150
mov edi, eax
test edi, edi
je 0x432e93
mov al, byte [edi + 0x17]
test al, al
jne 0x432dd4
mov ecx, dword [edi + 0xc]
mov al, byte [ecx + 0x17]
cmp al, 1
jne 0x4330b7
mov ecx, dword [esp + 0xc]
push 0xffffffffffffffff
push esi
mov eax, str.ErrorLevel
call fcn.0049e660
add esp, 8
test eax, eax
je 0x4330b7
cmp ebx, 0x41
jne 0x432e2c
mov ecx, dword [0x4e4b24]
mov edx, dword [ecx + 0xb4]
cmp dword [edx + 0x30], 0x7d0
jge 0x43307f
mov eax, edx
mov edx, dword [eax + 0x30]
mov eax, dword [eax + 0x1c]
mov dword [eax + edx*4], edi
mov eax, dword [ecx + 0xb4]
inc dword [eax + 0x30]
jmp 0x432e37
cmp ebx, 0xc1
jne 0x432e37
mov byte [edi + 0x16], bl
mov eax, dword [esp + 0x24]
call fcn.00413050
movzx ecx, word [eax]
cmp ecx, 0x3d
ja case.0x432e4f.1
movzx ecx, byte [ecx + 0x434640]
jmp dword [ecx*4 + 0x43462c]
add eax, 2
call fcn.00413050
mov edi, eax
mov dword [esp + 0xc], edi
cmp word [edi], 0
jne 0x432c74
cmp byte [esp + 0x13], 0
je 0x433103
mov edx, dword [esp + 0x14]
push 0
push 0
push 0
push 0x76
push edx
call fcn.00434ec0
test eax, eax
jne 0x433103
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
cmp word [eax + 2], 0x3d
jne 0x43309b
add eax, 4
mov byte [esp + 0x12], 0
xor dl, dl
xor edi, edi
xor esi, esi
jmp 0x432ec0
movzx ecx, word [eax + esi*2]
cmp ecx, 0x2c
jne 0x432f5d
test dl, dl
jne case.0x432f69.1
test edi, edi
jg case.0x432f69.1
mov ebx, dword [esp + 0xc]
lea edi, [eax + esi*2]
lea eax, [edi - 2]
mov edx, ebx
call fcn.00413070
mov esi, eax
movzx edx, word [esi + 2]
xor eax, eax
mov dword [esp + 0x24], edx
mov word [esi + 2], ax
cmp byte [esp + 0x12], al
je 0x432f91
lea edx, [esp + 0x8ce8]
mov eax, ebx
sub edx, ebx
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x432f13
push 0
push 1
push 1
push 0x4bede4
lea ecx, [esp + 0x8cf8]
push 0x4bedec
push ecx
xor eax, eax
or ecx, 0xffffffff
call fcn.0049ede0
add esp, 0x18
lea ebx, [esp + 0x8ce8]
jmp 0x432f95
add eax, 2
mov byte [esp + 0x12], 1
jmp 0x432eb1
cmp ecx, 0x7d
ja case.0x432f69.1
movzx ecx, byte [ecx + 0x434694]
jmp dword [ecx*4 + 0x434680]
test dl, dl
sete dl
inc esi
jmp 0x432ec0
test dl, dl
jne case.0x432f69.1
inc edi
inc esi
jmp 0x432ec0
test dl, dl
jne case.0x432f69.1
dec edi
inc esi
jmp 0x432ec0
mov ebx, dword [esp + 0xc]
cmp dword [esp + 0x18], 0x62
jne 0x432fa6
mov edx, dword [esp + 0x14]
mov byte [edx + 0x21], 1
jmp 0x432fd3
cmp byte [esp + 0x23], 0
je 0x432fd3
cmp byte [esp + 0x13], 0
jne 0x432fd3
mov eax, dword [esp + 0x14]
push 0
push 0
push 0
push 0x75
push eax
call fcn.00434ec0
test eax, eax
je 0x432e93
mov byte [esp + 0x13], 1
mov ecx, dword [esp + 0x14]
push 0
push 0
push 0
push 0
push 0
push 0
push ebx
call fcn.004329d0
test eax, eax
je 0x432e93
cmp dword [esp + 0x18], 0x62
jne 0x433015
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x610]
mov byte [ecx + 0x21], 0
movzx edx, byte [eax]
mov dword [eax + 0xc], edx
mov eax, dword [ecx + 0x610]
mov byte [eax], 8
mov cx, word [esp + 0x24]
mov word [esi + 2], cx
cmp word [edi], 0x2c
jne 0x432e60
lea eax, [edi + 2]
call fcn.00413050
mov edi, eax
mov dword [esp + 0xc], eax
jmp 0x432e64
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
push edx
push str.Parameters_must_not_be_declared.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
test byte [edi + 0x16], 0x40
mov eax, str.Duplicate_declaration.
jne 0x433067
mov eax, str.Declaration_conflicts_with_existing_var.
mov ecx, dword [esp + 0xc]
push ecx
mov ecx, dword [esp + 0x18]
push eax
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov edx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
push edx
push str.Too_many_declarations.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x14]
push eax
push str.This_line_does_not_contain_a_recognized_action.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov ecx, dword [esp + 0xc]
push ecx
mov ecx, dword [esp + 0x18]
push str.Built_in_variables_must_not_be_declared.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov esi, dword [esp + 0x14]
cmp byte [esi + 0x20], 0
je 0x43312a
mov eax, dword [0x4e4b24]
mov ecx, dword [eax + 0xb4]
mov al, byte [ecx + 0x50]
test al, al
jne 0x433111
cmp ebx, 0x42
jne 0x433100
mov dword [esp + 0x18], 0x46
mov ebx, dword [esp + 0x18]
mov byte [ecx + 0x50], bl
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
cmp al, 0x46
jne 0x43312a
cmp ebx, 0x62
jne 0x43312a
mov byte [ecx + 0x50], 0x66
lea eax, [ebx - 0x61]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
push edi
push str.This_line_does_not_contain_a_recognized_action.
mov ecx, esi
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x14]
push 1
push ecx
lea edx, [esp + 0xe8]
push edx
push eax
call fcn.00434a00
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x432a1a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov esi, eax
movzx eax, word [edx]
mov dword [esp + 0xc], esi
cmp ax, word [0x4e4a48]
je 0x4331cd
test ax, ax
je 0x4331cd
cmp eax, 0x20
je 0x4331cd
cmp eax, 9
je 0x4331cd
cmp eax, 0x28
jne 0x432a57
mov edi, dword [sym.imp.MSVCR100.dll__wcsicmp]
lea ecx, [esp + 0xe0]
push 0x4d4b0c
push ecx
call edi
add esp, 8
test eax, eax
je 0x4331cd
lea edx, [esp + 0xe0]
push str.WHILE
push edx
call edi
add esp, 8
test eax, eax
jne 0x432a57
mov byte [esp + 0x13], 1
jmp 0x432a5c
cmp byte [ebp + 0xc], 0
jne 0x433aee
cmp byte [ebp + 0x10], 0
jne case.0x433694.39
cmp byte [esp + 0x13], 0
je 0x43367a
lea edx, [esp + 0xe0]
push 0x4d4b0c
push edx
call dword [sym.imp.MSVCR100.dll__wcsicmp]
add esp, 8
test eax, eax
jne 0x43367a
movzx eax, word [esi]
cmp eax, 0x28
je case.0x433332.34
cmp ax, word [0x4e4a4c]
jne 0x43323f
movzx eax, word [esi + 2]
cmp eax, 0x20
je case.0x433332.34
cmp eax, 9
je case.0x433332.34
mov cx, word [0x4e4a48]
mov eax, 0x20
mov word [esp + 0x38], ax
mov eax, 0x3a
mov word [esp + 0x3a], cx
mov edi, 0x3d
mov word [esp + 0x44], ax
mov ecx, edi
lea ebx, [esp + 0x38]
mov eax, esi
mov dword [esp + 0x3c], 0x90028
mov dword [esp + 0x40], 0x3e003c
mov word [esp + 0x46], cx
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.00405590
test eax, eax
je 0x4332cb
call fcn.00413050
mov esi, eax
jmp 0x4332e6
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4332d0
mov ecx, dword [esp + 0xc]
sub eax, edx
sar eax, 1
lea esi, [ecx + eax*2]
mov ebx, dword [esp + 0xc]
push 3
push 0x4bf9bc
push ebx
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x43331a
movzx eax, word [ebx + 6]
push eax
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x43331a
mov bl, 1
jmp 0x43331c
xor bl, bl
movzx eax, word [esi]
add eax, 0xffffffdf
cmp eax, 0x4d
ja case.0x433332.34
movzx eax, byte [eax + 0x434738]
jmp dword [eax*4 + 0x434714]
mov byte [ebp + 0xc], 0x12
jmp 0x43337a
movzx eax, word [esi + 2]
sub eax, edi
je 0x433354
dec eax
je 0x43341b
mov byte [ebp + 0xc], 0x16
jmp 0x43337a
mov edx, 0x20
mov byte [ebp + 0xc], 0x17
mov word [esi + 2], dx
jmp 0x43337a
cmp word [esi + 2], di
jne 0x433408
mov byte [ebp + 0xc], 0x15
mov eax, 0x20
mov word [esi + 2], ax
mov ax, word [0x4e4a48]
mov word [esi], ax
mov al, byte [ebp + 0xc]
cmp al, 0xf
je 0x433392
cmp al, 0x10
jne 0x432a86
mov eax, 0x4d4b58
mov ecx, esi
call fcn.0049e990
mov esi, eax
test esi, esi
je 0x4333ed
mov edi, dword [sym.imp.MSVCR100.dll_wcschr]
lea ebx, [ebx]
movzx ecx, word [esi - 2]
push ecx
push 0x4bfcf4
call edi
add esp, 8
test eax, eax
je 0x4333da
movzx edx, word [esi + 6]
push edx
push 0x4bfcf4
call edi
add esp, 8
test eax, eax
jne 0x433664
lea ecx, [esi + 6]
mov eax, 0x4d4b58
call fcn.0049e990
mov esi, eax
test esi, esi
jne 0x4333b0
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
push eax
push str.BETWEEN_requires_the_word_AND.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov byte [ebp + 0xc], 0x14
jmp 0x43337a
cmp word [esi + 2], di
jne case.0x433332.34
mov ecx, 0x20
mov byte [ebp + 0xc], 0x13
mov word [esi + 2], cx
jmp 0x43337a
test bl, bl
jne case.0x433332.34
push 7
push str.between
push esi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne case.0x433332.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 [ebp + 0xc], 0xf
mov word [esi + 0xc], ax
jmp 0x43337a
test bl, bl
jne case.0x433332.34
push 8
push str.contains
push esi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne case.0x433332.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 [ebp + 0xc], 0xb
mov dword [esi + 0xc], eax
jmp 0x43337a
mov ax, word [esi + 2]
call fcn.00413020
movzx eax, ax
add eax, 0xffffffb2
cmp eax, 0x25
ja case.0x433332.34
movzx edx, byte [eax + 0x434794]
jmp dword [edx*4 + 0x434788]
test bl, bl
je 0x4334da
mov byte [ebp + 0xc], 0x11
jmp 0x43352b
lea eax, [esi + 4]
call fcn.00413050
push 3
mov ebx, eax
push 0x4d585c
push ebx
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
je 0x4334ff
mov byte [ebp + 0xc], 0xd
jmp 0x433518
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov dword [ebx], eax
mov byte [ebp + 0xc], 0xe
mov word [ebx + 4], ax
cmp byte [ebp + 0xc], 0x11
mov edx, 0x20
mov word [esi + 2], dx
jne 0x43337a
mov edi, dword [esp + 0xc]
mov eax, edi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x433534
sub eax, edx
sar eax, 1
cmp word [edi + eax*2 - 2], 0x7b
lea eax, [edi + eax*2 - 2]
jne 0x433af2
xor edx, edx
mov word [eax], dx
sub eax, edi
sar eax, 1
mov esi, edi
call fcn.00426890
mov byte [esp + 0x12], 1
jmp 0x433af2
test bl, bl
je 0x433577
mov byte [ebp + 0xc], 0x11
jmp 0x43352b
mov byte [ebp + 0xc], 9
jmp 0x433371
mov edi, dword [sym.imp.MSVCR100.dll__wcsnicmp]
push 3
push 0x4d585c
push esi
call edi
add esp, 0xc
test eax, eax
jne case.0x433332.34
movzx ecx, word [esi + 6]
lea eax, [esi + 6]
cmp ecx, 0x20
je 0x4335b0
cmp ecx, 9
jne case.0x433332.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.00413050
push 2
mov ebx, eax
push 0x4bedac
push ebx
call edi
add esp, 0xc
test eax, eax
jne 0x4335f7
mov eax, 0x20
movzx ecx, ax
mov eax, ecx
shl ecx, 0x10
or eax, ecx
mov byte [ebp + 0xc], 0xa
mov dword [ebx], eax
jmp 0x43337a
push 7
push str.between
push ebx
call edi
add esp, 0xc
test eax, eax
jne 0x43362c
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 [ebp + 0xc], 0x10
mov word [ebx + 0xc], ax
jmp 0x43337a
push 8
push str.contains
push ebx
call edi
add esp, 0xc
test eax, eax
jne 0x43337a
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 [ebp + 0xc], 0xc
mov dword [ebx + 0xc], eax
jmp 0x43337a
mov cx, word [0x4e4a48]
mov word [esi], cx
mov dword [esi + 2], 0x200020
jmp 0x432a86
movzx ecx, word [esi]
movzx eax, word [esi + 2]
lea edx, [ecx - 0x26]
cmp edx, 0x56
ja case.0x433694.39
movzx edx, byte [edx + 0x4347e4]
jmp dword [edx*4 + 0x4347bc]
mov byte [ebp + 0xc], 1
jmp 0x433914
cmp eax, 0x3d
jne case.0x433694.39
mov byte [ebp + 0xc], 2
jmp 0x4338b1
cmp word [esp + 0xe0], 0x2b
jne 0x4336d0
cmp word [esp + 0xe2], 0
jne 0x4336d0
mov cl, 1
jmp 0x4336db
xor cl, cl
cmp eax, 0x3d
jne case.0x433694.39
mov byte [ebp + 0xc], 4
test cl, cl
je 0x4338a1
lea eax, [esi + 2]
call fcn.00413050
mov ebx, str.__t____:_______._
mov edi, eax
call fcn.00405590
test eax, eax
jne 0x4337bb
mov eax, edi
lea edx, [eax + 2]
jmp 0x433710
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x433710
sub eax, edx
sar eax, 1
mov esi, eax
lea eax, [esi + esi + 2]
push eax
push edi
mov edi, dword [ebp + 8]
push edi
call dword [sym.imp.MSVCR100.dll_memmove]
mov cx, word [0x4e4a48]
mov eax, edi
mov word [edi + esi*2], cx
add esp, 0xc
mov dword [edi + esi*2 + 2], 0x31
mov dword [esp + 0xc], eax
jmp 0x432a86
cmp word [esp + 0xe0], 0x2d
jne 0x433773
cmp word [esp + 0xe2], 0
jne 0x433773
mov cl, 1
mov byte [ebp + 0xc], 5
jmp 0x4336df
xor cl, cl
cmp eax, 0x3d
jne case.0x433694.39
mov byte [ebp + 0xc], 5
jmp 0x4336df
cmp eax, 0x3d
jne case.0x433694.39
mov byte [ebp + 0xc], 6
jmp 0x4338b1
cmp eax, 0x3d
jne 0x4337a7
mov byte [ebp + 0xc], 7
jmp 0x4338b1
cmp eax, 0x2f
jne case.0x433694.39
cmp word [esi + 4], 0x3d
jne case.0x433694.39
mov eax, dword [ebp + 8]
mov byte [ebp + 0xc], 3
mov dword [esp + 0xc], eax
jmp 0x432a86
cmp eax, 0x3d
jne case.0x433694.39
mov eax, dword [ebp + 8]
mov byte [ebp + 0xc], 3
mov dword [esp + 0xc], eax
jmp 0x432a86
cmp ax, cx
jmp 0x4337aa
mov ebx, 0x3d
cmp ax, bx
je 0x4337bb
add esi, 2
mov eax, esi
call fcn.0044b290
cmp word [eax], 0x28
je 0x4337bb
cmp eax, esi
je case.0x433694.39
call fcn.00413050
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x5b
je 0x4337bb
test ax, ax
je 0x4337bb
cmp word [esi + 2], bx
jne 0x433838
push eax
push 0x4d58a4
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
jne 0x4337bb
movzx eax, word [esi]
cmp word [esi + 2], ax
jne 0x433873
push eax
push 0x4d58b8
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x43385e
cmp word [esi + 4], bx
je 0x4337bb
movzx eax, word [esi]
cmp eax, 0x2b
je 0x4337bb
cmp eax, 0x2d
je 0x4337bb
cmp ax, 0x2e
jne case.0x433694.39
add esi, 2
mov eax, esi
call fcn.0044b290
cmp word [eax], 0x28
jne 0x433803
mov eax, dword [ebp + 8]
mov byte [ebp + 0xc], 3
mov dword [esp + 0xc], eax
jmp 0x432a86
cmp byte [ebp + 0xc], 3
je 0x43392d
cmp byte [ebp + 0xc], 1
je 0x43390e
xor cl, cl
xor ebx, ebx
mov edx, 2
lea ebx, [ebx]
movzx eax, word [esi + edx*2]
cmp ax, word [0x4e4a48]
jne 0x433939
test cl, cl
jne case.0x433945.1
test ebx, ebx
jg case.0x433945.1
cmp word [esi + edx*2], 0
je 0x43390e
mov al, byte [ebp + 0xc]
cmp al, 4
je 0x4338f3
cmp al, 5
jne 0x4337bb
lea eax, [esi + edx*2 + 2]
call fcn.00413050
mov ebx, str.__t____:_______._
call fcn.00405590
test eax, eax
jne 0x4337bb
cmp byte [ebp + 0xc], 3
je 0x43392d
cmp byte [ebp + 0xc], 1
mov cx, word [0x4e4a48]
mov word [esi], cx
je 0x43392d
mov edx, 0x20
mov word [esi + 2], dx
mov eax, dword [ebp + 8]
mov dword [esp + 0xc], eax
jmp 0x432a86
cmp eax, 0x7d
ja case.0x433945.1
movzx eax, byte [eax + 0x434850]
jmp dword [eax*4 + 0x43483c]
test cl, cl
sete cl
inc edx
jmp 0x4338c0
test cl, cl
jne case.0x433945.1
inc ebx
inc edx
jmp 0x4338c0
test cl, cl
jne case.0x433945.1
dec ebx
inc edx
jmp 0x4338c0
cmp byte [ebp + 0xc], 0
jne 0x433aee
cmp byte [ebp + 0x10], 0
jne 0x433aee
mov esi, dword [esp + 0xc]
cmp word [esi], 0x7b
jne case.0x4339ad.34
lea eax, [esp + 0xe0]
push eax
call fcn.00434b20
movzx ecx, al
add ecx, 0xffffffdf
add esp, 4
cmp ecx, 0x52
ja case.0x4339ad.34
movzx ecx, byte [ecx + 0x4348dc]
jmp dword [ecx*4 + 0x4348d0]
cmp word [esi + 2], 0
mov byte [esp + 0x12], 1
jne case.0x4339ad.34
mov byte [ebp + 0xc], al
test al, al
jne 0x433aee
movzx edx, word [esi]
mov edi, dword [sym.imp.MSVCR100.dll_wcschr]
push edx
push str.__t____:_______._
call edi
add esp, 8
test eax, eax
je 0x433ade
movzx eax, word [esi]
cmp eax, 0x2b
je 0x4339f8
cmp eax, 0x2d
jne 0x433ab2
cmp word [esi + 2], ax
jne 0x433ab2
cmp word [esi + 4], 0
je 0x433a0f
mov byte [ebp + 0xc], 3
jmp 0x433a2c
cmp eax, 0x2b
setne al
add al, 4
mov byte [ebp + 0xc], al
mov ax, word [0x4e4a48]
mov ecx, 0x31
mov word [esi], ax
mov word [esi + 2], cx
cmp byte [ebp + 0xc], 0
mov edi, dword [ebp + 8]
mov dword [esp + 0xc], edi
jne 0x433aee
mov esi, edi
movzx eax, word [esi]
cmp eax, 0x28
je 0x433ae6
cmp eax, 0x5b
je 0x433ae6
cmp word [edi], 0x28
je 0x433ae6
push 3
push 0x4d58f4
push edi
call dword [sym.imp.MSVCR100.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x433a81
movzx eax, word [edi + 6]
cmp eax, 0x20
je 0x433ae6
cmp eax, 9
je 0x433ae6
push 0x4d4b98
push edi
call dword [sym.imp.MSVCR100.dll_wcsstr]
add esp, 8
test eax, eax
mov eax, str.Invalid_hotkey.
jne 0x433a9e
mov eax, str.This_line_does_not_contain_a_recognized_action.
mov ecx, dword [esp + 0x14]
push edi
push eax
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
cmp eax, 0x3f
je 0x433acf
push 0x3f
push esi
call edi
add esp, 8
test eax, eax
je 0x433ade
push 0x3a
push eax
call edi
add esp, 8
test eax, eax
je 0x433ade
mov edx, dword [ebp + 8]
mov byte [ebp + 0xc], 3
mov dword [esp + 0xc], edx
mov edi, edx
jmp 0x433af2
mov edi, dword [ebp + 8]
jmp 0x433a3f
mov byte [ebp + 0xc], 3
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0xc]
mov bl, byte [ebp + 0xc]
movzx eax, bl
lea ecx, [eax - 0x21]
cmp ecx, 0x52
ja case.0x433b0b.34
movzx ecx, byte [ecx + 0x43493c]
jmp dword [ecx*4 + 0x434930]
cmp word [edi], 0x7b
jne case.0x433b0b.34
mov edx, dword [ebp + 0xc]
mov esi, dword [esp + 0x14]
push 0
push 0
push 0
push edx
push esi
call fcn.00434ec0
test eax, eax
je 0x432e93
cmp word [edi], 0x7b
jne 0x433b5e
push 0
push 0
push 0
push 0x75
push esi
call fcn.00434ec0
test eax, eax
je 0x432e93
lea eax, [edi + 2]
call fcn.00413050
mov dword [esp + 0xc], eax
mov edi, eax
cmp word [edi], 0
je 0x433103
push 0
push 0
push 0
push 0
push 0
push 0
push edi
mov ecx, esi
call fcn.004329d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
test bl, bl
je 0x433b9b
lea ecx, [eax*8]
sub ecx, eax
lea edx, [ecx*2 + 0x4e4b68]
jmp 0x433baf
movzx eax, byte [ebp + 0x10]
lea ecx, [eax*8]
sub ecx, eax
lea edx, [ecx*2 + 0x4e57e8]
push 0x8002
lea eax, [esp + 0xce4]
push 0
push eax
mov dword [esp + 0x34], edx
call sub.MSVCR100.dll_memset
mov edx, dword [ebp + 0x1c]
add esp, 0xc
test edx, edx
je 0x433c02
mov ecx, dword [ebp + 0x20]
mov eax, edi
sub eax, dword [esp + 0x1c]
sar eax, 1
sub ecx, eax
test ecx, ecx
jle 0x433cc8
add ecx, ecx
push ecx
lea edx, [edx + eax*2]
push edx
lea eax, [esp + 0xce8]
push eax
call sub.MSVCR100.dll_memcpy
add esp, 0xc
jmp 0x433cc8
xor esi, esi
cmp word [edi + esi*2], 0
mov ax, word [0x4e4a50]
je 0x433c1f
cmp word [edi + esi*2], ax
je 0x433c1f
inc esi
cmp word [edi + esi*2], 0
jne 0x433c11
cmp word [edi + esi*2], 0
lea ebx, [edi + esi*2]
je 0x433cc5
movzx eax, word [ebx + 2]
lea ecx, [ebx + 2]
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x433c43.99
movzx edx, byte [eax + 0x4349b0]
jmp dword [edx*4 + 0x434990]
mov eax, 7
jmp 0x433c82
mov edx, 8
mov word [ecx], dx
jmp case.0x433c43.99
mov eax, 0xc
jmp 0x433c82
mov edx, 0xa
mov word [ecx], dx
jmp case.0x433c43.99
mov eax, 0xd
jmp 0x433c82
mov edx, 9
mov word [ecx], dx
jmp case.0x433c43.99
mov eax, 0xb
mov word [ecx], ax
mov eax, ecx
lea edi, [eax + 2]
lea ebx, [ebx]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x433c90
sub eax, edi
sar eax, 1
lea edx, [eax + eax + 2]
push edx
push ecx
push ebx
call sub.MSVCR100.dll_memcpy
mov edi, dword [esp + 0x18]
mov eax, 1
add esp, 0xc
mov word [esp + esi*2 + 0xce0], ax
inc esi
jmp 0x433c04
mov bl, byte [ebp + 0xc]
mov dword [esp + 0x18], 0
cmp bl, 0x22
jne 0x433e91
xor ebx, ebx
mov dword [esp + 0x1c], 1
cmp word [edi], bx
je 0x433f5f
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x1c]
cmp esi, 1
jle 0x433d00
inc ebx
lea ebx, [ebx]
movzx eax, word [edi + ebx*2]
cmp eax, 0x20
je 0x433cf9
cmp eax, 9
je 0x433cf9
lea edx, [ebx + ebx]
mov cx, word [edx + edi]
lea eax, [edx + edi]
cmp cx, word [0x4e4a4c]
jne 0x433d6b
cmp word [esp + edx + 0xce0], 0
jne 0x433d6b
movzx ecx, word [eax + 2]
cmp ecx, 0x20
je 0x433d3a
cmp ecx, 9
jne 0x433d6b
cmp esi, 3
jge 0x433f5f
movzx ecx, word [0x4e4a48]
mov edi, dword [esp + 0xc]
lea edx, [esp + 0xce0]
push edx
push ecx
lea eax, [ebx + 2]
mov ecx, edi
call fcn.004a0910
add esp, 8
mov esi, eax
jmp 0x433dfd
cmp word [eax], 0
mov esi, ebx
je 0x433da7
mov ecx, eax
jmp 0x433d80
mov di, word [0x4e4a48]
cmp word [ecx], di
jne 0x433d97
cmp word [esp + edx + 0xce0], 0
je 0x433da7
mov ecx, dword [esp + 0xc]
inc esi
lea edx, [esi + esi]
add ecx, edx
cmp word [ecx], 0
jne 0x433d80
mov ecx, dword [esp + 0x1c]
cmp ecx, 1
jne 0x433df4
mov edi, dword [esp + 0xc]
cmp word [edi + esi*2], 0
je 0x433f5f
xor edx, edx
push edx
push edx
push ecx
push edx
mov word [edi + esi*2], dx
call fcn.0049e420
add esp, 0x10
test eax, eax
jne 0x433ddd
mov dword [esp + 0x18], 1
cmp dword [esp + 0x18], 0
mov ax, word [0x4e4a48]
mov word [edi + esi*2], ax
jne 0x433f5f
jmp 0x433df9
cmp ecx, 4
je 0x433e13
mov edi, dword [esp + 0xc]
inc dword [esp + 0x1c]
cmp word [edi + esi*2], 0
mov ebx, esi
jne 0x433cf0
jmp 0x433f5f
mov ecx, dword [esp + 0xc]
push 0
push 1
lea edi, [ecx + ebx*2]
push 1
push 0
mov eax, edi
call fcn.0049e420
add esp, 0x10
test eax, eax
jne 0x433f5f
mov edx, dword [esp + 0xc]
cmp word [edx + esi*2], ax
jne 0x433e84
mov ax, word [0x4e4a4c]
cmp word [edi], ax
jne 0x433e84
cmp word [esp + ebx*2 + 0xce0], 0
jne 0x433e84
movzx eax, ax
push eax
add edi, 2
push edi
call dword [sym.imp.MSVCR100.dll_wcschr]
add esp, 8
test eax, eax
je 0x433e84
push 0
push 1
push 1
push 0
add eax, 2
call fcn.0049e420
add esp, 0x10
test eax, eax
jne 0x433f5f
mov dword [esp + 0x18], 3
jmp 0x433f5f
cmp bl, 0x6a
jne 0x433f5f
cmp word [edi], 0
mov esi, edi
je 0x433eea
mov ebx, dword [sym.imp.MSVCR100.dll_tolower]
movzx eax, word [esi]
cmp eax, 0x20
je 0x433eb5
cmp eax, 9
jne 0x433ee1
movzx ecx, word [esi + 2]
push ecx
call ebx
add esp, 4
cmp eax, 0x69
jne 0x433ee1
movzx edx, word [esi + 4]
push edx
call ebx
add esp, 4
cmp eax, 0x6e
jne 0x433ee1
movzx eax, word [esi + 6]
cmp eax, 0x20
je 0x433eea
cmp eax, 9
je 0x433eea
add esi, 2
cmp word [esi], 0
jne 0x433ea8
cmp word [esi], 0
mov dx, word [0x4e4a48]
jne 0x433f12
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
push eax
push str.This__For__is_missing_its__in_.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov eax, esi
sub eax, edi
sar eax, 1
mov ecx, 1
test eax, eax
jle 0x433f2d
cmp word [edi + eax*2], dx
jne 0x433f28
inc ecx
dec eax
test eax, eax
jg 0x433f21
mov word [esi + 2], dx
cmp ecx, 1
jle 0x433f5b
cmp ecx, 2
jle 0x433f56
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [esp + 0x18]
push str.Syntax_error_or_too_many_variables_in__For__statement.
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov edx, 0x20
mov word [esi + 4], dx
mov eax, dword [esp + 0x18]
xor esi, esi
mov byte [esp + 0x1c], 0
mov byte [esp + 0x2c], 0
mov dword [esp + 0x30], esi
mov dword [esp + 0x24], esi
cmp eax, esi
je 0x433f81
mov dword [esp + 0x34], eax
jmp 0x433f8d
mov eax, dword [esp + 0x28]
movsx ecx, byte [eax + 5]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0xc]
xor ebx, ebx
mov dword [esp + 0x18], ebx
cmp word [edx], si
je 0x43415d
mov ebx, dword [esp + 0x18]
cmp ebx, dword [esp + 0x34]
jge 0x43415d
cmp ebx, 2
jne 0x43401f
mov al, byte [ebp + 0xc]
sub al, 0x18
cmp al, 3
ja 0x434014
mov ecx, dword [esp + 0xc]
lea eax, [ecx + esi*2]
push 0
push eax
lea edx, [esp + 0x2e8]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c]
push edx
push eax
call fcn.00434a00
mov dword [esp + 0x30], eax
test eax, eax
je 0x434014
lea ecx, [esp + 0x2e0]
push ecx
call fcn.00434b20
add esp, 4
mov byte [esp + 0x1c], al
test al, al
jne 0x43415d
lea edx, [esp + 0x2e0]
push edx
call fcn.00434b60
add esp, 4
mov byte [esp + 0x2c], al
cmp byte [esp + 0x2c], 0
jne 0x43415d
mov eax, dword [esp + 0xc]
lea edi, [eax + esi*2]
lea eax, [esp + ebx*4 + 0x38]
lea ecx, [esp + ebx*4 + 0x90]
mov dword [esp + 0x8c], eax
mov dword [eax], edi
lea eax, [esp + esi*2 + 0xce0]
mov dword [esp + 0x88], ecx
mov dword [ecx], eax
mov ecx, dword [esp + 0x34]
dec ecx
cmp ebx, ecx
je 0x434158
mov cx, word [0x4e4a4c]
cmp word [edi], cx
jne 0x434077
cmp word [eax], 0
jne 0x434077
movzx eax, word [edi + 2]
cmp eax, 0x20
je 0x434096
cmp eax, 9
je 0x434096
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x38]
push 0xffffffffffffffff
push edx
mov edx, ebx
mov bl, byte [ebp + 0xc]
add ecx, 7
call fcn.00434ba0
add esp, 8
test al, al
je 0x4340b8
movzx ecx, word [0x4e4a48]
lea eax, [esp + 0xce0]
push eax
push ecx
mov ecx, dword [esp + 0x14]
mov eax, esi
call fcn.004a0910
add esp, 8
mov esi, eax
jmp 0x4340e6
movzx eax, word [edi]
test ax, ax
je 0x4340e6
mov cx, word [0x4e4a48]
cmp ax, cx
jne 0x4340d7
cmp word [esp + esi*2 + 0xce0], 0
je 0x4340e6
mov edx, dword [esp + 0xc]
movzx eax, word [edx + esi*2 + 2]
inc esi
test ax, ax
jne 0x4340c7
mov eax, dword [esp + 0xc]
cmp word [eax + esi*2], 0
je 0x43413f
mov edx, eax
mov eax, dword [esp + 0x88]
xor ecx, ecx
mov word [edx + esi*2], cx
mov ecx, dword [eax]
mov edx, dword [esp + 0x8c]
mov edi, dword [edx]
push ecx
call fcn.004268f0
mov ecx, dword [esp + 0x10]
inc esi
lea edx, [esp + 0xce4]
add esp, 4
lea eax, [ecx + esi*2]
sub edx, ecx
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x434132
cmp ecx, 9
jne 0x43413f
cmp word [edx + eax], 0
jne 0x43413f
inc esi
add eax, 2
jmp 0x434125
mov eax, dword [esp + 0xc]
inc dword [esp + 0x18]
cmp word [eax + esi*2], 0
jne 0x433fa0
mov ebx, dword [esp + 0x18]
jmp 0x43415d
inc ebx
mov dword [esp + 0x18], ebx
mov ecx, dword [esp + 0x28]
mov al, byte [ecx + 4]
movsx ecx, al
cmp ebx, ecx
jge 0x4341b4
cmp al, 1
mov eax, 0x4d59d0
jg 0x434179
mov eax, 0x4bd2c4
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [edx]
push ecx
push eax
push str.__s__requires_at_least__d_parameter_s.
mov esi, 0x400
lea edi, [esp + 0x4f0]
call fcn.0049e5c0
mov ecx, dword [ebp + 8]
add esp, 0x10
push ecx
mov ecx, dword [esp + 0x18]
mov edx, edi
push edx
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
xor eax, eax
test ecx, ecx
jle 0x4341cf
lea ebx, [ebx]
mov edx, dword [esp + eax*4 + 0x38]
inc eax
cmp word [edx], 0
je 0x4341ee
cmp eax, ecx
jl 0x4341c0
mov cl, byte [ebp + 0x10]
test cl, cl
je case.default.0x4341e7
movzx eax, cl
dec eax
cmp eax, 0xc
ja case.default.0x4341e7
jmp dword [eax*4 + 0x4349c8]
push eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
push ecx
push str.__s__requires_that_parameter__u_be_non_blank.
mov esi, 0x400
lea edi, [esp + 0x4ec]
call fcn.0049e5c0
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0x20]
add esp, 0xc
push edx
mov eax, edi
push eax
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x90]
push ecx
mov dword [esp + ebx*4 + 0x3c], 0x4d5a88
mov dword [esp + ebx*4 + 0x94], 0
inc ebx
push ebx
lea edx, [esp + 0x40]
push edx
push 0x8b
push eax
call fcn.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x3c]
lea ecx, [esp + 0x90]
push ecx
push 2
lea edx, [esp + 0x40]
push edx
push 0x8b
mov edi, 0x4d5a88
push ebx
mov dword [esp + 0x50], edi
mov dword [esp + 0xa8], 0
call fcn.00434ec0
test eax, eax
je 0x432e93
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x40]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x98]
mov dword [esp + 0x9c], eax
xor eax, eax
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0xa0]
mov dword [esp + 0x90], 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 ebx
mov dword [esp + 0x54], esi
mov dword [esp + 0xa8], edx
mov dword [esp + 0x5c], edi
call fcn.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
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.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
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.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
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.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
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.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
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.00434ec0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov byte [ebp + 0xc], 0x12
jmp case.default.0x4341e7
mov byte [ebp + 0xc], 0x13
jmp case.default.0x4341e7
mov byte [ebp + 0xc], 0x14
jmp case.default.0x4341e7
mov byte [ebp + 0xc], 0x15
jmp case.default.0x4341e7
mov byte [ebp + 0xc], 0x16
jmp case.default.0x4341e7
mov byte [ebp + 0xc], 0x17
test ebx, ebx
je 0x4344ec
cmp byte [esp + 0x1c], 0
jne 0x4344ec
cmp byte [esp + 0x2c], 0
jne 0x4344ec
mov al, byte [ebp + 0xc]
lea edx, [eax - 0x12]
cmp dl, 0xe
ja 0x4344ec
cmp al, 0x17
ja 0x43442b
sub cl, 6
cmp cl, 5
ja 0x4344ec
mov esi, dword [esp + ebx*4 + 0x34]
mov edx, dword [esp + 0xc]
mov eax, esi
sub eax, edx
sar eax, 1
movzx ecx, word [edx + eax*2]
test cx, cx
je 0x4344ec
mov di, word [0x4e4a48]
lea ecx, [ecx]
cmp cx, di
jne 0x434460
cmp word [esp + eax*2 + 0xce0], 0
je 0x434470
movzx ecx, word [edx + eax*2 + 2]
inc eax
test cx, cx
jne 0x434450
jmp 0x4344ec
mov edx, dword [esp + 0xc]
lea edi, [edx + eax*2]
movzx ecx, word [edx + eax*2 + 2]
inc eax
cmp ecx, 0x20
je 0x434477
cmp ecx, 9
je 0x434477
mov ecx, dword [esp + 0x14]
lea eax, [edx + eax*2]
push 0
push eax
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x2e8]
push eax
push ecx
call fcn.00434a00
mov dword [esp + 0x30], eax
test eax, eax
je 0x4344ec
lea edx, [esp + 0x2e0]
push edx
call fcn.00434b20
add esp, 4
mov byte [esp + 0x1c], al
test al, al
jne 0x4344db
lea eax, [esp + 0x2e0]
push eax
call fcn.00434b60
add esp, 4
mov byte [esp + 0x2c], al
test al, al
je 0x4344ec
xor ecx, ecx
or eax, 0xffffffff
mov word [edi], cx
call fcn.00426890
mov ebx, dword [esp + 0x18]
mov al, byte [ebp + 0xc]
cmp al, 0x69
je 0x4344f7
cmp al, 0x6b
jne 0x434506
cmp ebx, 1
jne 0x434506
mov edx, dword [esp + 0x38]
cmp word [edx], 0
jne 0x43451a
cmp al, 0x6a
je 0x434512
cmp al, 0x72
jne 0x434582
mov ebx, dword [esp + 0x18]
test ebx, ebx
je 0x434582
mov ebx, dword [esp + 0x18]
mov ebx, dword [esp + ebx*4 + 0x34]
mov eax, ebx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x434523
sub eax, edx
sar eax, 1
cmp word [ebx + eax*2 - 2], 0x7b
jne 0x434582
xor ecx, ecx
mov word [ebx + eax*2 - 2], cx
or eax, 0xffffffff
mov esi, ebx
mov byte [esp + 0x12], 1
call fcn.00426890
test eax, eax
jne 0x434582
mov al, byte [ebp + 0xc]
cmp al, 0x69
je 0x43457a
cmp al, 0x72
je 0x43457a
mov edx, dword [ebp + 8]
mov ecx, dword [esp + 0x14]
push edx
push str.Parameter_1_required
call fcn.00449df0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c
mov dword [esp + 0x18], 0
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
lea eax, [esp + 0x90]
push eax
mov eax, dword [ebp + 0xc]
push ecx
lea edx, [esp + 0x40]
push edx
push eax
push edi
call fcn.00434ec0
test eax, eax
je 0x432e93
cmp byte [esp + 0x12], 0
je 0x4345c7
push 0
push 0
push 0
push 0x75
push edi
call fcn.00434ec0
test eax, eax
je 0x432e93
cmp byte [esp + 0x1c], 0
jne 0x4345d9
cmp byte [esp + 0x2c], 0
je 0x433103
mov edx, dword [esp + 0x30]
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4345e2
mov ecx, edx
sub ecx, dword [esp + 0xc]
sub eax, esi
sar eax, 1
push eax
sar ecx, 1
lea eax, [esp + ecx*2 + 0xce4]
push eax
mov eax, dword [esp + 0x24]
push edx
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x2ec]
push ecx
mov ecx, dword [esp + 0x34]
push edx
push eax
push ecx
mov ecx, edi
call fcn.004329d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x1c