Function at 0x447b73
Capabilities:
Get keyboard layout
Parse credit card information

Disassembly:
push ebp
mov eax, 0xe328
lea ebp, [esp - 0x6c]
call fcn.00457ac0
mov eax, dword [ebp + 0x74]
push ebx
xor ebx, ebx
cmp eax, ebx
push esi
push edi
mov dword [ebp + 0x60], ecx
je 0x448d48
cmp byte [eax], bl
je 0x448d48
mov eax, dword [0x469b94]
cmp eax, ebx
mov dword [ebp + 4], eax
jne 0x447bb4
mov eax, dword [ecx + 0x494]
mov dword [0x469548], eax
xor eax, eax
mov byte [ebp - 0xa2b8], bl
mov ecx, 0x1000
lea edi, [ebp - 0xa2b7]
rep stosd dword es:[edi], eax
push 0x4595d8
push dword [ebp + 0x74]
lea eax, [ebp - 0x62b4]
lea esi, [ebp - 0xe2bc]
lea ecx, [ebp - 0x14c]
mov dword [ebp + 0x68], ebx
mov dword [ebp + 0x34], ebx
mov dword [ebp + 0x64], eax
mov dword [ebp + 0x30], esi
call fcn.00450136
test eax, eax
je 0x447c0e
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push dword [ebp + 0x74]
push ebx
push str.EXE_corrupted
jmp 0x448d40
lea eax, [ebp + 0x34]
push eax
lea eax, [ebp + 0x68]
push eax
push str._AUTOHOTKEY_SCRIPT_
lea ecx, [ebp - 0x14c]
call fcn.0045050e
test eax, eax
jne 0x447c38
mov edi, dword [ebp + 0x60]
mov byte [edi + 0x4b1], bl
jmp 0x447ccf
lea eax, [ebp + 0x34]
push eax
lea eax, [ebp + 0x68]
push eax
push str._AHK_WITH_ICON_
lea ecx, [ebp - 0x14c]
call fcn.0045050e
test eax, eax
jne 0x447c60
mov edi, dword [ebp + 0x60]
mov byte [edi + 0x4b1], 1
jmp 0x447ccf
lea eax, [ebp + 0x34]
push eax
lea eax, [ebp + 0x68]
push eax
push 0x45a67c
lea ecx, [ebp - 0x14c]
call fcn.0045050e
test eax, eax
jne 0x447c87
mov edi, dword [ebp + 0x60]
mov byte [edi + 0x4b1], bl
jmp 0x447cb1
lea eax, [ebp + 0x34]
push eax
lea eax, [ebp + 0x68]
push eax
push 0x45a674
lea ecx, [ebp - 0x14c]
call fcn.0045050e
test eax, eax
jne 0x448d24
mov edi, dword [ebp + 0x60]
mov byte [edi + 0x4b1], 1
mov cl, byte [ebp + 0x34]
add cl, 0x20
jne 0x447cbb
mov cl, 0x40
xor edx, edx
cmp dword [ebp + 0x34], ebx
jbe 0x447ccf
mov eax, dword [ebp + 0x68]
add eax, edx
sub byte [eax], cl
inc edx
cmp edx, dword [ebp + 0x34]
jb 0x447cc2
mov eax, dword [ebp + 0x68]
inc dword [0x469b94]
or dword [ebp + 0x14], 0xffffffff
mov dword [ebp + 0x20], eax
mov eax, dword [ebp + 4]
mov dword [edi + 0x48], eax
mov eax, 0x4000
cmp dword [ebp + 0x34], eax
mov byte [ebp + 0x3f], bl
mov byte [ebp + 0x49], bl
mov byte [ebp + 0x46], bl
jg 0x447cfb
mov eax, dword [ebp + 0x34]
lea ecx, [ebp + 0x20]
push ecx
push ebx
push eax
lea eax, [ebp - 0x62b4]
push eax
mov ecx, edi
call fcn.0044fe7f
push 2
mov dword [ebp + 0x58], eax
lea eax, [ebp - 0x62b4]
push 0x45d2ec
push eax
call fcn.00457ce0
add esp, 0xc
neg eax
sbb al, al
inc al
mov byte [ebp + 0x77], al
je 0x447d3c
mov byte [ebp - 0x62b4], bl
mov dword [ebp + 0x58], ebx
cmp dword [ebp + 0x58], 0xffffffff
je 0x448cc8
mov eax, dword [ebp + 0x14]
push 0xc
push str.CommentFlag
push dword [ebp + 0x64]
inc eax
mov dword [edi + 0x4c], eax
mov dword [edi + 0x23c], ebx
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x447d7b
push dword [ebp + 0x64]
mov ecx, edi
call fcn.00448dd8
test eax, eax
je 0x448cf2
mov byte [ebp + 8], bl
mov dword [ebp + 0x54], ebx
mov eax, dword [ebp + 0x34]
sub eax, dword [ebp + 0x20]
inc dword [ebp + 0x14]
add eax, dword [ebp + 0x68]
mov ecx, 0x4000
cmp eax, ecx
jle 0x447d98
mov eax, ecx
lea ecx, [ebp + 0x20]
push ecx
push dword [ebp + 0x54]
mov ecx, dword [ebp + 0x60]
push eax
push esi
call fcn.0044fe7f
mov edi, eax
cmp edi, ebx
mov dword [ebp + 0x1c], edi
je 0x447f19
cmp edi, 0xffffffff
je 0x447f19
cmp byte [ebp + 0x77], bl
je 0x447eef
push 2
push 0x45d2e8
push esi
call fcn.00457ce0
add esp, 0xc
test eax, eax
jne 0x447d81
dec edi
dec edi
lea eax, [edi + 1]
push eax
lea eax, [esi + 2]
push eax
push esi
mov byte [ebp + 0x77], bl
call fcn.00457710
push edi
push esi
call fcn.0040a45e
add esp, 0x14
cmp byte [esi], bl
mov edi, eax
mov dword [ebp + 0x1c], edi
je 0x447d81
cmp dword [ebp + 0x54], ebx
jne 0x448229
cmp edi, 0xffffffff
je 0x447f89
cmp byte [esi], 0x28
jne 0x447f89
lea eax, [esi + 1]
cmp byte [eax], 0x3a
je 0x447f89
cmp byte [edi + esi - 1], 0x3a
je 0x447f89
mov cl, byte [0x466c88]
push eax
mov dword [ebp + 0x54], 1
mov byte [ebp + 8], 1
mov dword [ebp + 0x18], ebx
mov byte [ebp + 0x3c], cl
mov byte [ebp + 0x39], 1
mov byte [ebp + 0x3a], bl
mov byte [ebp + 0x3e], bl
mov byte [ebp + 0x3d], 1
mov byte [ebp - 0x18], 0xa
mov byte [ebp - 0x17], bl
mov dword [ebp + 0x24], 1
call fcn.00401ed8
mov edi, eax
cmp byte [edi], bl
pop ecx
je 0x447d81
push 0x45ac08
push edi
call fcn.0043956b
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jne 0x447e9a
push edi
call fcn.00457520
mov esi, eax
pop ecx
add esi, edi
mov al, byte [esi]
push 4
push str.Join
push edi
mov byte [ebp + 0x4e], al
mov byte [esi], bl
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x44819c
push 0x10
add edi, 4
lea eax, [ebp - 0x18]
push edi
push eax
call fcn.004392af
xor eax, eax
mov al, byte [0x464092]
push 1
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.004382a8
lea eax, [ebp - 0x18]
push eax
call fcn.00457520
add esp, 0x1c
mov dword [ebp + 0x24], eax
jmp 0x44820b
cmp dword [ebp + 0x54], ebx
jne 0x448229
push 2
push 0x45d2ec
push esi
call fcn.00457ce0
add esp, 0xc
test eax, eax
jne 0x447e0f
mov byte [ebp + 0x77], 1
jmp 0x447d81
cmp byte [ebp + 0x77], bl
je 0x447e06
cmp edi, 0xffffffff
jne 0x447d81
cmp dword [ebp + 0x58], ebx
je 0x448a8a
cmp byte [ebp - 0xa2b8], bl
mov esi, dword [ebp + 0x60]
je 0x4483d8
mov eax, dword [ebp + 0x10]
mov edi, dword [esi + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, dword [ebp + 0x64]
cmp byte [eax], 0x7b
je 0x448388
cmp byte [ebp + 0x3b], bl
jne 0x448388
push ebx
push ebx
push ebx
push ebx
push ebx
push 3
lea eax, [ebp - 0xa2b8]
push eax
mov ecx, esi
call fcn.004496ea
test eax, eax
je 0x448cf2
mov dword [esi + 0x23c], ebx
jmp 0x4483cf
cmp edi, 0xffffffff
mov dword [ebp + 0x54], ebx
je 0x447f2b
cmp edi, ebx
je 0x447d81
cmp byte [edi + esi - 1], 0x3a
jne 0x447fa5
cmp byte [esi], 0x2c
jne 0x447f2b
movsx eax, byte [esi]
push eax
call fcn.0044234f
cmp eax, 0x41
pop ecx
je 0x44810d
cmp eax, 0x4f
je 0x4480f4
mov cl, byte [esi]
cmp cl, 0x3a
je 0x447fd2
cmp cl, 0x2b
je 0x447fd2
cmp cl, 0x2d
jne 0x447fdb
cmp byte [esi + 1], cl
je 0x447f2b
cmp cl, 0x2e
je 0x447fe5
cmp cl, 0x3f
jne 0x447ffc
mov al, byte [esi + 1]
cmp al, 0x20
je 0x447ffc
cmp al, 9
je 0x447ffc
cmp al, 0xa0
je 0x447ffc
cmp al, 0x3d
jne 0x447f2b
movsx eax, cl
push eax
push str.____:.___
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x447f2b
push 0x45cf40
push esi
call fcn.004575b0
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x5c], eax
je 0x44815c
cmp byte [esi], 0x3a
jne 0x448075
lea edi, [esi + 1]
jmp 0x448061
cmp al, 0x3a
je 0x447f2b
movsx eax, al
push eax
call fcn.0043c692
test eax, eax
pop ecx
jne 0x448060
movsx eax, byte [edi]
push eax
push str.____t
call fcn.00457650
test eax, eax
pop ecx
pop ecx
je 0x44806f
inc edi
mov al, byte [edi]
cmp al, bl
jne 0x448036
cmp al, 0x3a
je 0x447f2b
mov eax, dword [ebp + 0x5c]
mov edi, dword [ebp + 0x1c]
cmp byte [esi], 0x2c
jne 0x4480bf
lea eax, [esi + 1]
push eax
call fcn.00401ed8
push 2
push 0x45cf40
push eax
mov dword [ebp + 0x5c], eax
call fcn.00457ce0
add esp, 0x10
test eax, eax
je 0x447f2b
mov eax, dword [ebp + 0x5c]
push 3
dec eax
push 0x45ab6c
push eax
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x447f2b
jmp 0x44815c
cmp esi, eax
mov ecx, esi
jae 0x4480cf
cmp byte [ecx], 0x22
je 0x4480cf
inc ecx
cmp ecx, eax
jb 0x4480c5
cmp ecx, eax
je 0x447f2b
add eax, 2
mov cl, byte [eax]
cmp cl, bl
je 0x447f2b
cmp cl, 0x22
je 0x4480f0
inc eax
mov cl, byte [eax]
cmp cl, bl
jne 0x4480e4
cmp byte [eax], bl
jmp 0x4480b4
movsx eax, byte [esi + 1]
push eax
call fcn.0044234f
cmp eax, 0x52
pop ecx
jne 0x447f2b
lea eax, [esi + 2]
jmp 0x448128
push 3
push 0x45cf88
push esi
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x447f2b
lea eax, [esi + 3]
mov cl, byte [eax]
cmp cl, 0x20
je 0x44813d
cmp cl, 9
je 0x44813d
cmp cl, 0xa0
jne 0x447f2b
push eax
call fcn.00401ed8
movsx eax, byte [eax]
push eax
push str.____:
call fcn.00457650
add esp, 0xc
test eax, eax
jne 0x447f2b
mov eax, dword [ebp + 0x58]
lea ecx, [edi + eax]
cmp ecx, 0x4000
jae 0x448c50
cmp byte [esi], 0x2c
je 0x44817e
mov ecx, dword [ebp + 0x64]
mov byte [eax + ecx], 0x20
inc eax
mov dword [ebp + 0x58], eax
lea eax, [edi + 1]
push eax
push esi
mov ecx, dword [ebp + 0x64]
mov eax, dword [ebp + 0x58]
add eax, ecx
push eax
call fcn.00456f20
add esp, 0xc
add dword [ebp + 0x58], edi
jmp 0x447d81
push 5
push str.LTrim
push edi
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x4481ba
cmp byte [edi + 5], 0x30
setne byte [ebp + 0x3c]
jmp 0x44820b
push 5
push str.RTrim
push edi
call fcn.00441f04
add esp, 0xc
test eax, eax
jne 0x448205
cmp byte [edi + 5], 0x30
setne byte [ebp + 0x39]
jmp 0x44820b
cmp al, 0x25
je 0x448200
cmp al, 0x2c
je 0x4481fb
cmp al, 0x43
je 0x4481ec
cmp al, 0x60
je 0x4481f5
cmp al, 0x63
jne 0x448204
mov dword [ebp + 0x54], 2
jmp 0x448204
mov byte [ebp + 0x3a], 1
jmp 0x448204
mov byte [ebp + 0x3d], bl
jmp 0x448204
mov byte [ebp + 0x3e], 1
inc edi
mov al, byte [edi]
cmp al, bl
jne 0x4481d8
mov al, byte [ebp + 0x4e]
push esi
mov byte [esi], al
call fcn.00401ed8
mov edi, eax
cmp byte [edi], bl
pop ecx
jne 0x447e7c
mov esi, dword [ebp + 0x30]
jmp 0x447d81
cmp edi, 0xffffffff
je 0x448cb9
cmp edi, 0xfffffffe
je 0x447d81
cmp byte [esi], 0x29
jne 0x44825a
lea eax, [esi + 1]
push 0xffffffffffffffff
push esi
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x5c], eax
call fcn.0040a4ad
mov edi, eax
pop ecx
dec edi
jmp 0x44832f
cmp byte [ebp + 0x39], bl
mov dword [ebp + 0x5c], esi
je 0x44826d
push edi
push esi
call fcn.0040a4ad
pop ecx
pop ecx
mov edi, eax
cmp byte [ebp + 0x3c], bl
je 0x44827d
push edi
push esi
call fcn.0040a45e
pop ecx
pop ecx
mov edi, eax
cmp byte [ebp + 0x3a], bl
mov dword [ebp + 0x50], ebx
je 0x4482b2
mov al, byte [0x464092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x48], al
mov byte [ebp + 0x44], al
mov byte [ebp + 0x45], al
push 1
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp + 0x48]
push eax
push esi
call fcn.0041ce56
add esp, 0x20
mov dword [ebp + 0x50], eax
cmp byte [ebp + 0x3e], bl
je 0x4482ea
mov al, byte [0x464091]
mov cl, byte [0x464092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x48], al
mov byte [ebp + 0x45], al
push 1
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp + 0x48]
push eax
push esi
mov byte [ebp + 0x44], cl
call fcn.0041ce56
add esp, 0x20
add dword [ebp + 0x50], eax
cmp byte [ebp + 0x3d], bl
je 0x448322
mov al, byte [0x464090]
mov cl, byte [0x464092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x48], al
mov byte [ebp + 0x45], al
push 1
lea eax, [ebp + 0x44]
push eax
lea eax, [ebp + 0x48]
push eax
push esi
mov byte [ebp + 0x44], cl
call fcn.0041ce56
add esp, 0x20
add dword [ebp + 0x50], eax
cmp dword [ebp + 0x50], ebx
je 0x448330
push esi
call fcn.00457520
mov edi, eax
pop ecx
mov eax, dword [ebp + 0x24]
lea ecx, [eax + edi]
add ecx, dword [ebp + 0x58]
cmp ecx, 0x4001
jae 0x448cc3
inc dword [ebp + 0x18]
cmp dword [ebp + 0x18], 1
jle 0x448374
cmp eax, ebx
je 0x448374
cmp dword [ebp + 0x5c], esi
jne 0x448374
mov ecx, dword [ebp + 0x64]
inc eax
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp + 0x58]
add eax, ecx
push eax
call fcn.00456f20
mov eax, dword [ebp + 0x24]
add esp, 0xc
add dword [ebp + 0x58], eax
cmp edi, ebx
je 0x447d81
lea eax, [edi + 1]
push eax
push dword [ebp + 0x5c]
jmp 0x448183
mov eax, dword [0x464108]
cmp dword [eax + 0x94], ebx
mov ecx, esi
jne 0x448c63
lea eax, [ebp - 0x22b0]
push eax
lea eax, [ebp - 0xa2b8]
push eax
call fcn.0044eb63
test eax, eax
je 0x448cf2
cmp byte [ebp + 0x3b], bl
je 0x4483cf
push ebx
push ebx
push ebx
push 0x6c
mov ecx, esi
call fcn.0044acf3
test eax, eax
je 0x448cf2
mov dword [esi + 0x4c], edi
mov byte [ebp - 0xa2b8], bl
lea eax, [ebp + 0x3b]
push eax
push dword [ebp + 0x64]
call fcn.00448d54
test al, al
pop ecx
pop ecx
je 0x448406
push dword [ebp + 0x64]
lea eax, [ebp - 0xa2b8]
push eax
call fcn.004572f0
mov eax, dword [esi + 0x4c]
pop ecx
pop ecx
mov dword [ebp + 0x10], eax
jmp 0x448a8a
mov edx, dword [ebp + 0x64]
cmp byte [edx], 0x3a
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x28], ebx
mov dword [ebp + 0x5c], ebx
jne 0x448508
lea eax, [edx + 1]
mov cl, byte [eax]
cmp cl, bl
je 0x448508
cmp cl, 0x3a
je 0x448449
push 0x3a
push eax
mov dword [ebp + 0x28], eax
call fcn.00457650
cmp eax, ebx
pop ecx
pop ecx
jne 0x448446
mov dword [ebp + 0x54], ebx
jmp 0x448508
inc eax
jmp 0x448454
lea eax, [edx + 2]
cmp byte [eax], bl
je 0x448508
cmp eax, ebx
mov dword [ebp + 0x54], eax
je 0x448508
mov esi, eax
mov al, byte [esi]
cmp al, bl
je 0x4484fb
cmp al, byte [0x464092]
je 0x44847e
cmp al, 0x3a
je 0x44847e
inc esi
mov al, byte [esi]
cmp al, bl
jne 0x44846b
mov al, byte [esi]
cmp al, bl
je 0x4484fb
cmp al, 0x3a
lea edi, [esi + 1]
jne 0x448494
cmp byte [edi], al
jne 0x4484f5
mov dword [ebp + 0x5c], esi
jmp 0x4484f3
movsx eax, byte [edi]
sub eax, 0x61
je 0x4484d4
dec eax
je 0x4484cf
sub eax, 4
je 0x4484ca
sub eax, 8
je 0x4484c5
sub eax, 4
je 0x4484c0
dec eax
dec eax
je 0x4484bb
dec eax
dec eax
jne 0x4484d7
mov byte [edi], 0xb
jmp 0x4484d7
mov byte [edi], 9
jmp 0x4484d7
mov byte [edi], 0xd
jmp 0x4484d7
mov byte [edi], 0xa
jmp 0x4484d7
mov byte [edi], 0xc
jmp 0x4484d7
mov byte [edi], 8
jmp 0x4484d7
mov byte [edi], 7
push edi
call fcn.00457520
inc eax
push eax
push edi
push esi
call fcn.00457710
add esp, 0x10
cmp byte [esi], 0x3a
jne 0x4484f5
cmp byte [edi], 0x3a
jne 0x4484f5
mov esi, edi
inc esi
jmp 0x448461
cmp dword [ebp + 0x5c], ebx
jne 0x448503
mov dword [ebp + 0x54], ebx
cmp dword [ebp + 0x54], ebx
jne 0x448561
mov esi, dword [ebp + 0x64]
push 0x45cf40
push esi
call fcn.004575b0
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x5c], eax
je 0x448853
cmp eax, esi
jne 0x448531
cmp byte [eax + 2], 0x3a
jne 0x448531
inc eax
mov dword [ebp + 0x5c], eax
push eax
push esi
call fcn.004394b7
pop ecx
pop ecx
mov edi, eax
mov al, byte [edi]
push ebx
push ebx
push esi
mov byte [ebp + 0x4e], al
mov byte [edi], bl
call fcn.00401ed8
pop ecx
push eax
call fcn.00410ad1
add esp, 0xc
test eax, eax
jne 0x44855c
mov dword [ebp + 0x5c], ebx
mov al, byte [ebp + 0x4e]
mov byte [edi], al
cmp dword [ebp + 0x5c], ebx
je 0x448853
mov eax, dword [ebp + 0x64]
cmp dword [ebp + 0x5c], eax
jbe 0x448853
mov eax, dword [0x464108]
cmp dword [eax + 0x94], ebx
jne 0x448c71
mov eax, dword [ebp + 0x60]
mov eax, dword [eax + 4]
cmp eax, ebx
je 0x44859a
cmp byte [eax], 0x1b
je 0x448c7b
mov eax, dword [ebp + 0x5c]
add dword [ebp + 0x5c], 2
cmp dword [ebp + 0x54], ebx
mov edi, dword [ebp + 0x5c]
mov byte [eax], bl
jne 0x448722
push 0xffffffffffffffff
push edi
call fcn.0040a45e
push 0xffffffffffffffff
push dword [ebp + 0x64]
call fcn.0040a4ad
add esp, 0x10
cmp byte [edi], bl
mov dword [ebp + 0x5c], edi
je 0x448722
push ebx
push ebx
push dword [ebp + 0x64]
call fcn.00410e0c
mov esi, dword [sym.imp.USER32.dll_GetKeyboardLayout]
add esp, 0xc
push ebx
mov dword [ebp + 0x50], eax
call esi
push eax
push 1
push ebx
push ebx
push dword [ebp + 0x50]
call fcn.00415869
add esp, 0x14
cmp al, bl
mov byte [ebp + 0xc], al
je 0x448722
cmp byte [edi + 1], bl
je 0x44862e
push ebx
push ebx
push edi
call fcn.00410e0c
add esp, 0xc
push ebx
mov dword [ebp + 0x5c], eax
call esi
push eax
push 1
push ebx
push ebx
push dword [ebp + 0x5c]
call fcn.00415869
add esp, 0x14
mov byte [ebp + 0x3f], al
jmp 0x448632
mov byte [ebp + 0x3f], 0xff
cmp byte [ebp + 0x3f], bl
je 0x448722
push dword [ebp + 0x3f]
call fcn.00444b50
push dword [ebp + 0xc]
mov byte [ebp + 0x4f], al
call fcn.00444b50
test al, al
pop ecx
pop ecx
jne 0x44865d
cmp byte [ebp + 0x4f], bl
mov byte [ebp + 0x43], 1
jne 0x448660
mov byte [ebp + 0x43], bl
mov esi, dword [ebp + 0x50]
push esi
call fcn.00457520
cmp eax, 1
pop ecx
jne 0x448683
xor eax, eax
mov al, byte [esi]
push eax
call dword [sym.imp.USER32.dll_IsCharUpperA]
test eax, eax
mov eax, 0x45d2a4
jne 0x448688
mov eax, 0x4595d8
push dword [ebp + 0x64]
push eax
push str._s_s
lea eax, [ebp - 0x16c]
push 0x20
push eax
call fcn.0040a513
push 0x20
push dword [ebp + 0x5c]
lea eax, [ebp - 0x38]
push eax
call fcn.004392af
push 8
lea eax, [ebp - 8]
push edi
push eax
call fcn.004392af
mov eax, dword [ebp + 0x5c]
sub eax, edi
add esp, 0x2c
cmp eax, 8
jae 0x4486ca
mov byte [ebp + eax - 8], bl
cmp byte [ebp - 8], bl
mov dword [ebp + 0x2c], ebx
jne 0x448a8a
movzx eax, byte [ebp + 0x3f]
sub eax, 0xd
je 0x448707
sub eax, 4
je 0x4486f1
dec eax
dec eax
je 0x44871f
sub eax, 0x4c
jne 0x448a8a
push 0x45af98
push edi
call fcn.0043956b
test eax, eax
pop ecx
pop ecx
jne 0x44871f
jmp 0x448a8a
lea eax, [ebp - 0x38]
push str.Return
push eax
call fcn.00441ec1
test eax, eax
pop ecx
pop ecx
jne 0x448a8a
mov byte [ebp + 0x3f], bl
mov esi, dword [ebp + 0x60]
cmp byte [esi + 0x50], bl
je 0x44874b
push ebx
push 0xff
push ebx
push 0x66
mov ecx, esi
mov byte [esi + 0x50], bl
call fcn.0044acf3
test eax, eax
je 0x448cf2
mov dword [esi + 0x23c], ebx
push 1
push dword [ebp + 0x64]
mov ecx, esi
call fcn.0044f363
test eax, eax
je 0x448cf2
cmp byte [edi], bl
mov dword [ebp + 0x50], ebx
je 0x4487b6
cmp dword [ebp + 0x54], ebx
jne 0x4487a2
push ebx
push edi
call fcn.0041025e
cmp ax, bx
pop ecx
pop ecx
mov dword [ebp + 0x50], eax
jne 0x4487a2
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.00448d54
neg al
sbb al, al
pop ecx
pop ecx
mov ecx, esi
and eax, 3
push eax
push edi
call fcn.004496ea
test eax, eax
je 0x448cf2
push ebx
push ebx
push ebx
push 0x66
mov ecx, esi
call fcn.0044acf3
test eax, eax
je 0x448cf2
mov eax, dword [ebp + 0x54]
cmp eax, ebx
je 0x4487e3
cmp byte [eax], bl
je 0x448c91
mov eax, dword [ebp + 0x28]
cmp eax, ebx
jne 0x4487d1
mov eax, 0x4595d8
push dword [ebp + 8]
push edi
push dword [ebp + 0x54]
push eax
push dword [esi + 0x10]
call fcn.0040f710
jmp 0x44884b
lea eax, [ebp]
push eax
push dword [ebp + 0x64]
call fcn.004109f0
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x44883b
mov eax, dword [ebp + 0x50]
cmp ax, bx
je 0x448808
mov word [edi + 2], ax
jmp 0x448a8a
mov ecx, edi
call fcn.00411949
test eax, eax
jne 0x448c9e
push dword [ebp]
mov ecx, edi
push dword [esi + 0x10]
call fcn.00411811
test eax, eax
jne 0x448a8a
push dword [ebp + 0x64]
push str.Out_of_memory.
mov ecx, esi
jmp 0x448c59
push ebx
push dword [ebp]
push ebx
push dword [ebp + 0x50]
push dword [esi + 0x10]
call fcn.004101d3
add esp, 0x14
jmp 0x448a82
mov esi, dword [ebp + 0x64]
mov ecx, dword [ebp + 0x58]
cmp byte [ecx + esi - 1], 0x3a
jne 0x448931
cmp ecx, 1
je 0x448cb1
mov al, byte [esi]
mov edi, esi
jmp 0x44889e
cmp al, 0x20
je 0x448931
cmp al, 9
je 0x448931
cmp al, byte [0x464090]
je 0x448931
cmp al, byte [0x464092]
je 0x448931
inc edi
mov al, byte [edi]
cmp al, bl
jne 0x448873
cmp byte [ecx + esi - 2], 0x3a
jne 0x448913
cmp ecx, 2
jbe 0x448913
mov edi, dword [ebp + 0x60]
cmp byte [edi + 0x50], bl
je 0x4488d7
push ebx
push 0xff
push ebx
push 0x66
mov ecx, edi
mov byte [edi + 0x50], bl
call fcn.0044acf3
test eax, eax
je 0x448cf2
mov dword [edi + 0x23c], ebx
push esi
push str.Note:_The_hotkey__s_will_not_be_active_because_it_does_not_exist_in_the_current_keyboard_layout.
lea eax, [ebp - 0x370]
push 0x204
push eax
call fcn.0040a513
fldz
add esp, 0x10
push ebx
push ecx
push ecx
fstp qword [esp]
push ebx
lea eax, [ebp - 0x370]
push 0x10000
push eax
call fcn.0043bc63
mov ecx, dword [ebp + 0x58]
add esp, 0x18
jmp 0x448916
mov edi, dword [ebp + 0x60]
dec ecx
push ecx
push esi
mov byte [ecx + esi], bl
call fcn.0040a4ad
pop ecx
pop ecx
push ebx
push esi
mov ecx, edi
call fcn.0044f363
jmp 0x448a82
cmp byte [esi], 0x23
mov edi, dword [ebp + 0x60]
jne 0x448965
mov eax, dword [edi + 0x4c]
push esi
mov ecx, edi
mov dword [ebp + 0x28], eax
call fcn.00448dd8
cmp eax, ebx
je 0x448cf2
cmp eax, 3
jne 0x448965
mov eax, dword [ebp + 4]
mov dword [edi + 0x48], eax
mov eax, dword [ebp + 0x28]
mov dword [edi + 0x4c], eax
jmp 0x448a8a
cmp byte [esi], 0x7d
jne 0x4489a0
push ebx
push ebx
push ebx
push 0x6d
mov ecx, edi
call fcn.0044acf3
test eax, eax
je 0x448cf2
inc esi
push esi
call fcn.00401ed8
cmp byte [eax], bl
pop ecx
mov dword [ebp + 0x64], eax
je 0x448a8a
mov esi, eax
push esi
call fcn.00457520
mov edi, dword [ebp + 0x60]
pop ecx
mov dword [ebp + 0x58], eax
push str._t__
push esi
call fcn.0043956b
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x50], eax
jne 0x4489bc
mov eax, dword [ebp + 0x58]
add eax, esi
mov dword [ebp + 0x50], eax
mov eax, dword [ebp + 0x50]
push 0xffffffffffffffff
sub eax, esi
push eax
push str.Else
push esi
call fcn.004392cf
add esp, 0x10
test eax, eax
push ebx
push ebx
mov ecx, edi
push ebx
je 0x448a2b
cmp byte [esi], 0x7b
jne 0x448a25
push 0x6c
call fcn.0044acf3
test eax, eax
je 0x448cf2
inc esi
push esi
call fcn.00401ed8
mov esi, eax
cmp byte [esi], bl
pop ecx
je 0x448a8a
mov edi, dword [ebp + 0x60]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push esi
mov dword [edi + 0x23c], ebx
call fcn.00448d54
neg al
sbb al, al
pop ecx
pop ecx
mov ecx, edi
and eax, 3
push eax
push esi
jmp 0x448a7d
push ebx
push ebx
push ebx
push esi
jmp 0x448a7d
push 9
call fcn.0044acf3
test eax, eax
je 0x448cf2
push dword [ebp + 0x50]
mov dword [edi + 0x23c], ebx
call fcn.00401ed8
mov edi, eax
mov al, byte [edi]
cmp al, byte [0x464090]
pop ecx
jne 0x448a5f
inc edi
push edi
call fcn.00401ed8
pop ecx
mov edi, eax
cmp byte [edi], bl
je 0x448a8a
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.00448d54
neg al
sbb al, al
pop ecx
pop ecx
mov ecx, dword [ebp + 0x60]
and eax, 3
push eax
push edi
call fcn.004496ea
test eax, eax
je 0x448cf2
cmp byte [ebp + 0x3f], bl
je 0x448c1f
inc dword [ebp + 0x2c]
mov eax, dword [ebp + 0x2c]
dec eax
je 0x448ba4
dec eax
je 0x448ae4
dec eax
je 0x448bc3
sub eax, 7
jne 0x448c1f
cmp byte [ebp + 0x3f], 0x12
mov ecx, 0x4595d8
je 0x448aca
cmp byte [ebp + 0x3f], 0xa3
jbe 0x448b38
cmp byte [ebp + 0x3f], 0xa5
ja 0x448b38
movzx eax, byte [ebp + 0xc]
sub eax, 0x11
je 0x448b33
sub eax, 0x91
je 0x448b33
dec eax
jne 0x448b38
mov ecx, str.RCtrl_up
jmp 0x448b38
push 0x45d21c
push dword [ebp + 0x64]
call fcn.004572f0
cmp byte [ebp + 0x4f], bl
pop ecx
pop ecx
mov ecx, dword [ebp + 0x60]
push ebx
lea eax, [ebp + 0x64]
push 1
push eax
setne al
add al, 0xb9
push eax
call fcn.0044acf3
cmp byte [ebp + 0x43], bl
je 0x448ab3
lea eax, [ebp - 0x38]
push eax
push str.if_not_GetKeyState___s__
push dword [ebp + 0x64]
call fcn.0040a5ef
add esp, 0xc
mov dword [ebp + 0x58], eax
mov dword [ebp + 0x2c], 9
jmp 0x448406
mov ecx, str.LCtrl_up
mov esi, dword [ebp + 0x60]
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 8]
push eax
push ecx
push str.Blind_s_s_s_DownTemp
push dword [ebp + 0x64]
mov dword [esi + 0x23c], ebx
call fcn.0040a5ef
add esp, 0x14
push ebx
push 1
lea eax, [ebp + 0x64]
push eax
push 0x41
mov ecx, esi
call fcn.0044acf3
test eax, eax
je 0x448cf2
push ebx
push ebx
push ebx
push 0x66
mov ecx, esi
call fcn.0044acf3
lea eax, [ebp - 0x16c]
push eax
push str._s_up::
push dword [ebp + 0x64]
call fcn.0040a5ef
add esp, 0xc
mov dword [ebp + 0x58], eax
mov dword [ebp + 0x2c], 2
jmp 0x448406
lea eax, [ebp - 0x16c]
push eax
push str._s::
push dword [ebp + 0x64]
call fcn.0040a5ef
add esp, 0xc
mov dword [ebp + 0x58], eax
jmp 0x448406
push 0x45d21c
push dword [ebp + 0x64]
call fcn.004572f0
cmp byte [ebp + 0x4f], bl
pop ecx
pop ecx
mov ecx, dword [ebp + 0x60]
push ebx
lea eax, [ebp + 0x64]
push 1
push eax
setne al
add al, 0xb9
push eax
call fcn.0044acf3
lea eax, [ebp - 0x38]
push eax
push str.Blind_s_Up
push dword [ebp + 0x64]
call fcn.0040a5ef
mov ecx, dword [ebp + 0x60]
add esp, 0xc
push ebx
push 1
lea eax, [ebp + 0x64]
push eax
push 0x41
call fcn.0044acf3
mov ecx, dword [ebp + 0x60]
push ebx
push ebx
push ebx
push 0x66
call fcn.0044acf3
mov byte [ebp + 0x3f], bl
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x30]
mov dword [ebp + 0x58], ecx
lea ecx, [ebp - 0x62b4]
cmp eax, ecx
mov dword [ebp + 0x64], eax
jne 0x448c48
lea eax, [ebp - 0xe2bc]
mov edi, dword [ebp + 0x60]
mov dword [ebp + 0x30], eax
mov esi, eax
jmp 0x447d3c
lea eax, [ebp - 0x62b4]
jmp 0x448c3b
push esi
push str.Continuation_section_too_long.
mov ecx, dword [ebp + 0x60]
call fcn.0044bc5a
jmp 0x448cf2
lea eax, [ebp - 0xa2b8]
push eax
push str.Functions_cannot_contain_functions.
jmp 0x448c59
push dword [ebp + 0x64]
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
jmp 0x448c56
mov ecx, dword [ebp + 0x60]
push dword [ebp + 0x64]
mov eax, dword [ecx + 4]
mov dword [ecx + 0x23c], eax
push str.IfWin_should_be_IfWin.
jmp 0x448c59
push dword [ebp + 0x64]
push str.This_hotstring_is_missing_its_abbreviation.
jmp 0x448834
push dword [ebp + 0x64]
mov dword [esi + 0x23c], ebx
push str.Duplicate_hotkey.
jmp 0x448834
push esi
push str.This_line_does_not_contain_a_recognized_action.
jmp 0x448c56
push dword [ebp + 0x64]
push str.Missing____
jmp 0x448c56
push dword [ebp + 0x5c]
jmp 0x448c51
cmp byte [ebp - 0xa2b8], bl
je 0x448d0b
mov eax, dword [ebp + 0x10]
mov esi, dword [edi + 0x4c]
push ebx
push ebx
push ebx
push ebx
push ebx
mov dword [edi + 0x4c], eax
push 3
lea eax, [ebp - 0xa2b8]
push eax
mov ecx, edi
call fcn.004496ea
test eax, eax
jne 0x448d08
push dword [ebp + 0x68]
call fcn.0043e6a5
pop ecx
lea ecx, [ebp - 0x14c]
call fcn.0045031b
jmp 0x448d48
mov dword [edi + 0x4c], esi
push dword [ebp + 0x68]
call fcn.0043e6a5
pop ecx
lea ecx, [ebp - 0x14c]
call fcn.0045031b
xor eax, eax
inc eax
jmp 0x448d4a
lea ecx, [ebp - 0x14c]
call fcn.0045031b
fldz
push ebx
push ecx
push ecx
fstp qword [esp]
push dword [ebp + 0x74]
push ebx
push str.Could_not_extract_script_from_EXE.
call fcn.0043bc63
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebx
add ebp, 0x6c
leave
ret 0xc