Function at 0x447eff
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov eax, 0xe328
lea ebp, [esp - 0x6c]
call fcn.00457ed0
mov eax, dword [ebp + 0x74]
push ebx
push esi
xor ebx, ebx
cmp eax, ebx
mov esi, ecx
push edi
mov dword [ebp], esi
je 0x4490e4
cmp byte [eax], bl
je 0x4490e4
mov eax, dword [0x46ab94]
cmp eax, ebx
mov dword [ebp + 4], eax
jne 0x447f42
mov eax, dword [esi + 0x494]
mov dword [0x46a548], eax
xor eax, eax
mov byte [ebp - 0xa2b8], bl
mov ecx, 0x1000
lea edi, [ebp - 0xa2b7]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x62b4]
push 0x45a5d8
push dword [ebp + 0x74]
mov dword [ebp + 0x68], eax
lea eax, [ebp - 0xe2bc]
lea ecx, [ebp - 0x14c]
mov dword [ebp + 0x64], ebx
mov dword [ebp + 0x30], ebx
mov dword [ebp + 0x50], eax
call fcn.00450546
test eax, eax
je 0x447f9c
push ebx
fldz
push ecx
push ecx
fstp qword [esp]
push dword [ebp + 0x74]
push ebx
push str.EXE_corrupted
jmp 0x4490dc
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x64]
push eax
push str._AUTOHOTKEY_SCRIPT_
lea ecx, [ebp - 0x14c]
mov byte [ebp + 0x3b], bl
call fcn.0045091e
test eax, eax
jne 0x447fc6
mov byte [esi + 0x4b1], bl
jmp 0x448063
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x64]
push eax
push str._AHK_WITH_ICON_
lea ecx, [ebp - 0x14c]
call fcn.0045091e
test eax, eax
jne 0x447feb
mov byte [esi + 0x4b1], 1
jmp 0x448063
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x64]
push eax
push 0x45b68c
lea ecx, [ebp - 0x14c]
mov byte [ebp + 0x3b], 1
call fcn.0045091e
test eax, eax
jne 0x448013
mov byte [esi + 0x4b1], bl
jmp 0x44803a
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x64]
push eax
push 0x45b684
lea ecx, [ebp - 0x14c]
call fcn.0045091e
test eax, eax
jne 0x4490c0
mov byte [esi + 0x4b1], 1
mov eax, dword [ebp + 0x30]
cmp ax, bx
mov edi, eax
jne 0x448049
mov edi, 0x400
shr eax, 1
mov ecx, dword [ebp + 0x64]
mov dword [ebp + 0x74], ecx
mov ecx, ebx
je 0x448063
mov edx, dword [ebp + 0x74]
lea edx, [edx + ecx*2]
sub word [edx], di
inc ecx
cmp ecx, eax
jb 0x448055
mov eax, dword [ebp + 0x64]
inc dword [0x46ab94]
or dword [ebp + 0x20], 0xffffffff
mov dword [ebp + 0x18], eax
mov eax, dword [ebp + 4]
mov dword [esi + 0x48], eax
mov eax, 0x4000
cmp dword [ebp + 0x30], eax
mov byte [ebp + 0x36], bl
mov byte [ebp + 0x45], bl
mov byte [ebp + 0x42], bl
jg 0x44808f
mov eax, dword [ebp + 0x30]
lea ecx, [ebp + 0x18]
push ecx
push ebx
push eax
lea eax, [ebp - 0x62b4]
push eax
mov ecx, esi
call fcn.0045028f
push 2
mov dword [ebp + 0x5c], eax
lea eax, [ebp - 0x62b4]
push 0x45e304
push eax
call fcn.004580f0
add esp, 0xc
neg eax
sbb al, al
inc al
mov byte [ebp + 0x77], al
je 0x4480d0
mov byte [ebp - 0x62b4], bl
mov dword [ebp + 0x5c], ebx
cmp dword [ebp + 0x5c], 0xffffffff
je 0x449053
mov eax, dword [ebp + 0x20]
push 0xc
push str.CommentFlag
push dword [ebp + 0x68]
inc eax
mov dword [esi + 0x4c], eax
mov dword [esi + 0x23c], ebx
call fcn.00442274
add esp, 0xc
test eax, eax
jne 0x44810f
push dword [ebp + 0x68]
mov ecx, esi
call fcn.00449174
test eax, eax
je 0x44907d
mov byte [ebp + 0x10], bl
mov dword [ebp + 0x4c], ebx
mov edi, dword [ebp + 0x50]
mov eax, dword [ebp + 0x30]
sub eax, dword [ebp + 0x18]
inc dword [ebp + 0x20]
add eax, dword [ebp + 0x64]
mov ecx, 0x4000
cmp eax, ecx
jle 0x44812f
mov eax, ecx
lea ecx, [ebp + 0x18]
push ecx
push dword [ebp + 0x4c]
mov ecx, esi
push eax
push edi
call fcn.0045028f
cmp eax, ebx
mov dword [ebp + 0x58], eax
je 0x4482b3
cmp eax, 0xffffffff
je 0x4482b3
cmp byte [ebp + 0x77], bl
je 0x448289
push 2
push 0x45e300
push edi
call fcn.004580f0
add esp, 0xc
test eax, eax
jne 0x448118
sub dword [ebp + 0x58], 2
mov eax, dword [ebp + 0x58]
inc eax
push eax
lea eax, [edi + 2]
push eax
push edi
mov byte [ebp + 0x77], bl
call fcn.00457b20
push dword [ebp + 0x58]
push edi
call fcn.0040a61a
add esp, 0x14
cmp byte [edi], bl
mov dword [ebp + 0x58], eax
je 0x448118
cmp dword [ebp + 0x4c], ebx
jne 0x4485ca
mov ecx, dword [ebp + 0x58]
cmp ecx, 0xffffffff
je 0x448321
cmp byte [edi], 0x28
jne 0x448321
lea eax, [edi + 1]
cmp byte [eax], 0x3a
je 0x448321
cmp byte [ecx + edi - 1], 0x3a
je 0x448321
mov cl, byte [0x467c88]
push eax
mov dword [ebp + 0x4c], 1
mov byte [ebp + 0x10], 1
mov dword [ebp + 0x1c], ebx
mov byte [ebp + 0x35], cl
mov byte [ebp + 0x34], 1
mov byte [ebp + 0x3a], bl
mov byte [ebp + 0x3c], bl
mov byte [ebp + 0x3f], 1
mov byte [ebp - 0x18], 0xa
mov byte [ebp - 0x17], bl
mov dword [ebp + 0x28], 1
call fcn.00401ea8
mov edi, eax
cmp byte [edi], bl
pop ecx
je 0x448115
push 0x45bc18
push edi
call fcn.004398da
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jne 0x448234
push edi
call fcn.00457930
mov esi, eax
pop ecx
add esi, edi
mov al, byte [esi]
push 4
push str.Join
push edi
mov byte [ebp + 0x4b], al
mov byte [esi], bl
call fcn.00442274
add esp, 0xc
test eax, eax
jne 0x44853d
push 0x10
add edi, 4
lea eax, [ebp - 0x18]
push edi
push eax
call fcn.0043961e
xor eax, eax
mov al, byte [0x465092]
push 1
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.0043865d
lea eax, [ebp - 0x18]
push eax
call fcn.00457930
add esp, 0x1c
mov dword [ebp + 0x28], eax
jmp 0x4485ac
cmp dword [ebp + 0x4c], ebx
jne 0x4485ca
push 2
push 0x45e304
push edi
call fcn.004580f0
add esp, 0xc
test eax, eax
jne 0x4481a6
mov byte [ebp + 0x77], 1
jmp 0x448118
cmp byte [ebp + 0x77], bl
je 0x44819d
cmp dword [ebp + 0x58], 0xffffffff
jne 0x448115
cmp dword [ebp + 0x5c], ebx
je 0x448e2b
cmp byte [ebp - 0xa2b8], bl
je 0x448784
mov eax, dword [ebp + 0x14]
mov edi, dword [esi + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, dword [ebp + 0x68]
cmp byte [eax], 0x7b
je 0x448734
cmp byte [ebp + 0x3e], bl
jne 0x448734
push ebx
push ebx
push ebx
push ebx
push ebx
push 3
lea eax, [ebp - 0xa2b8]
push eax
mov ecx, esi
call fcn.00449a86
test eax, eax
je 0x44907d
mov dword [esi + 0x23c], ebx
jmp 0x44877b
cmp ecx, 0xffffffff
mov dword [ebp + 0x4c], ebx
je 0x4482c6
mov eax, dword [ebp + 0x58]
cmp eax, ebx
je 0x448115
mov edi, dword [ebp + 0x50]
cmp byte [eax + edi - 1], 0x3a
jne 0x448343
cmp byte [edi], 0x2c
jne 0x4482c6
movsx eax, byte [edi]
push eax
call fcn.004426bf
cmp eax, 0x41
pop ecx
je 0x4484a2
cmp eax, 0x4f
je 0x448486
mov cl, byte [edi]
cmp cl, 0x3a
je 0x448370
cmp cl, 0x2b
je 0x448370
cmp cl, 0x2d
jne 0x44837c
cmp byte [edi + 1], cl
je 0x4482c6
mov edi, dword [ebp + 0x50]
cmp cl, 0x2e
je 0x448386
cmp cl, 0x3f
jne 0x44839d
mov al, byte [edi + 1]
cmp al, 0x20
je 0x44839d
cmp al, 9
je 0x44839d
cmp al, 0xa0
je 0x44839d
cmp al, 0x3d
jne 0x4482c6
movsx eax, cl
push eax
push str.____:.___
call fcn.00457a60
test eax, eax
pop ecx
pop ecx
je 0x4482c6
mov edi, dword [ebp + 0x50]
push 0x45df58
push edi
call fcn.004579c0
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x60], eax
je 0x4484f7
cmp byte [edi], 0x3a
jne 0x448413
jmp 0x448401
cmp al, 0x3a
je 0x4482c6
movsx eax, al
push eax
call fcn.0043ca02
test eax, eax
pop ecx
jne 0x448401
movsx eax, byte [edi]
push eax
push str.____t
call fcn.00457a60
test eax, eax
pop ecx
pop ecx
je 0x448410
inc edi
mov al, byte [edi]
cmp al, bl
jne 0x4483d7
cmp al, 0x3a
je 0x4482c6
mov eax, dword [ebp + 0x60]
mov ecx, dword [ebp + 0x50]
cmp byte [ecx], 0x2c
jne 0x448457
inc ecx
push ecx
call fcn.00401ea8
push 2
mov edi, eax
push 0x45df58
push edi
call fcn.004580f0
add esp, 0x10
test eax, eax
je 0x4482c6
push 3
push 0x45bb7c
dec edi
push edi
call fcn.004580f0
add esp, 0xc
test eax, eax
jmp 0x44847e
cmp byte [ecx], 0x22
je 0x44845b
inc ecx
cmp ecx, eax
jb 0x448451
cmp ecx, eax
je 0x4482c6
add eax, 2
mov cl, byte [eax]
cmp cl, bl
je 0x4482c6
cmp cl, 0x22
je 0x44847c
inc eax
mov cl, byte [eax]
cmp cl, bl
jne 0x448470
cmp byte [eax], bl
je 0x4482c6
jmp 0x4484f4
movsx eax, byte [edi + 1]
push eax
call fcn.004426bf
cmp eax, 0x52
pop ecx
jne 0x4482c6
mov eax, dword [ebp + 0x50]
add eax, 2
jmp 0x4484c0
push 3
push 0x45dfa0
push edi
call fcn.00442274
add esp, 0xc
test eax, eax
jne 0x4482c6
mov eax, dword [ebp + 0x50]
add eax, 3
mov cl, byte [eax]
cmp cl, 0x20
je 0x4484d5
cmp cl, 9
je 0x4484d5
cmp cl, 0xa0
jne 0x4482c6
push eax
call fcn.00401ea8
movsx eax, byte [eax]
push eax
push str.____:
call fcn.00457a60
add esp, 0xc
test eax, eax
jne 0x4482c6
mov edi, dword [ebp + 0x50]
mov eax, dword [ebp + 0x5c]
mov ecx, dword [ebp + 0x58]
add ecx, eax
cmp ecx, 0x4000
jae 0x448fe5
cmp byte [edi], 0x2c
je 0x44851b
mov ecx, dword [ebp + 0x68]
mov byte [eax + ecx], 0x20
inc eax
mov dword [ebp + 0x5c], eax
mov eax, dword [ebp + 0x58]
inc eax
push eax
push edi
mov ecx, dword [ebp + 0x68]
mov eax, dword [ebp + 0x5c]
add eax, ecx
push eax
call fcn.00457330
mov eax, dword [ebp + 0x58]
add esp, 0xc
add dword [ebp + 0x5c], eax
jmp 0x448118
push 5
push str.LTrim
push edi
call fcn.00442274
add esp, 0xc
test eax, eax
jne 0x44855b
cmp byte [edi + 5], 0x30
setne byte [ebp + 0x35]
jmp 0x4485ac
push 5
push str.RTrim
push edi
call fcn.00442274
add esp, 0xc
test eax, eax
jne 0x4485a6
cmp byte [edi + 5], 0x30
setne byte [ebp + 0x34]
jmp 0x4485ac
cmp al, 0x25
je 0x4485a1
cmp al, 0x2c
je 0x44859c
cmp al, 0x43
je 0x44858d
cmp al, 0x60
je 0x448596
cmp al, 0x63
jne 0x4485a5
mov dword [ebp + 0x4c], 2
jmp 0x4485a5
mov byte [ebp + 0x3a], 1
jmp 0x4485a5
mov byte [ebp + 0x3f], bl
jmp 0x4485a5
mov byte [ebp + 0x3c], 1
inc edi
mov al, byte [edi]
cmp al, bl
jne 0x448579
mov al, byte [ebp + 0x4b]
push esi
mov byte [esi], al
call fcn.00401ea8
mov edi, eax
cmp byte [edi], bl
pop ecx
jne 0x448216
mov esi, dword [ebp]
jmp 0x448115
cmp dword [ebp + 0x58], 0xffffffff
je 0x449044
cmp dword [ebp + 0x58], 0xfffffffe
je 0x448118
cmp byte [edi], 0x29
jne 0x4485fb
lea eax, [edi + 1]
push 0xffffffffffffffff
push edi
mov dword [ebp + 0x4c], ebx
mov dword [ebp + 0x54], eax
call fcn.0040a669
pop ecx
dec eax
jmp 0x4486d4
cmp byte [ebp + 0x34], bl
mov dword [ebp + 0x54], edi
je 0x448611
push dword [ebp + 0x58]
push edi
call fcn.0040a669
pop ecx
pop ecx
mov dword [ebp + 0x58], eax
cmp byte [ebp + 0x35], bl
je 0x448624
push dword [ebp + 0x58]
push edi
call fcn.0040a61a
pop ecx
pop ecx
mov dword [ebp + 0x58], eax
cmp byte [ebp + 0x3a], bl
mov dword [ebp + 0x60], ebx
je 0x448659
mov al, byte [0x465092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x44], al
mov byte [ebp + 0x40], al
mov byte [ebp + 0x41], al
push 1
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x44]
push eax
push edi
call fcn.0041d1d6
add esp, 0x20
mov dword [ebp + 0x60], eax
cmp byte [ebp + 0x3c], bl
je 0x448691
mov al, byte [0x465091]
mov cl, byte [0x465092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x44], al
mov byte [ebp + 0x41], al
push 1
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x44]
push eax
push edi
mov byte [ebp + 0x40], cl
call fcn.0041d1d6
add esp, 0x20
add dword [ebp + 0x60], eax
cmp byte [ebp + 0x3f], bl
je 0x4486c9
mov al, byte [0x465090]
mov cl, byte [0x465092]
push ebx
push ebx
push 0x4001
push 0xffffffffffffffff
mov byte [ebp + 0x44], al
mov byte [ebp + 0x41], al
push 1
lea eax, [ebp + 0x40]
push eax
lea eax, [ebp + 0x44]
push eax
push edi
mov byte [ebp + 0x40], cl
call fcn.0041d1d6
add esp, 0x20
add dword [ebp + 0x60], eax
cmp dword [ebp + 0x60], ebx
je 0x4486d8
push edi
call fcn.00457930
pop ecx
mov dword [ebp + 0x58], eax
mov eax, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x58]
add ecx, eax
add ecx, dword [ebp + 0x5c]
cmp ecx, 0x4001
jae 0x44904e
inc dword [ebp + 0x1c]
cmp dword [ebp + 0x1c], 1
jle 0x44871e
cmp eax, ebx
je 0x44871e
cmp dword [ebp + 0x54], edi
jne 0x44871e
mov ecx, dword [ebp + 0x68]
inc eax
push eax
lea eax, [ebp - 0x18]
push eax
mov eax, dword [ebp + 0x5c]
add eax, ecx
push eax
call fcn.00457330
mov eax, dword [ebp + 0x28]
add esp, 0xc
add dword [ebp + 0x5c], eax
cmp dword [ebp + 0x58], ebx
je 0x448118
mov eax, dword [ebp + 0x58]
inc eax
push eax
push dword [ebp + 0x54]
jmp 0x448521
mov eax, dword [0x465108]
cmp dword [eax + 0x94], ebx
mov ecx, esi
jne 0x448ff7
lea eax, [ebp - 0x22b0]
push eax
lea eax, [ebp - 0xa2b8]
push eax
call fcn.0044ef4a
test eax, eax
je 0x44907d
cmp byte [ebp + 0x3e], bl
je 0x44877b
push ebx
push ebx
push ebx
push 0x6c
mov ecx, esi
call fcn.0044b08f
test eax, eax
je 0x44907d
mov dword [esi + 0x4c], edi
mov byte [ebp - 0xa2b8], bl
lea eax, [ebp + 0x3e]
push eax
push dword [ebp + 0x68]
call fcn.004490f0
test al, al
pop ecx
pop ecx
je 0x4487b2
push dword [ebp + 0x68]
lea eax, [ebp - 0xa2b8]
push eax
call fcn.00457700
mov eax, dword [esi + 0x4c]
pop ecx
pop ecx
mov dword [ebp + 0x14], eax
jmp 0x448e2b
mov edx, dword [ebp + 0x68]
cmp byte [edx], 0x3a
mov dword [ebp + 0x4c], ebx
mov dword [ebp + 0x24], ebx
mov dword [ebp + 0x60], ebx
jne 0x4488cd
lea eax, [edx + 1]
mov cl, byte [eax]
cmp cl, bl
je 0x4488cd
cmp cl, 0x3a
je 0x4487f5
push 0x3a
push eax
mov dword [ebp + 0x24], eax
call fcn.00457a60
cmp eax, ebx
pop ecx
pop ecx
jne 0x4487f2
mov dword [ebp + 0x4c], ebx
jmp 0x4488cd
inc eax
jmp 0x448800
lea eax, [edx + 2]
cmp byte [eax], bl
je 0x4488cd
cmp eax, ebx
mov dword [ebp + 0x4c], eax
je 0x4488cd
mov edi, eax
mov dword [ebp + 0x54], edi
mov al, byte [edi]
cmp al, bl
je 0x4488c0
cmp al, byte [0x465092]
je 0x448830
cmp al, 0x3a
je 0x448830
inc edi
mov al, byte [edi]
cmp al, bl
mov dword [ebp + 0x54], edi
jne 0x44881a
mov al, byte [edi]
cmp al, bl
je 0x4488c0
mov edi, dword [ebp + 0x54]
inc edi
cmp al, 0x3a
jne 0x44884e
cmp byte [edi], al
jne 0x4488b5
mov eax, dword [ebp + 0x54]
mov dword [ebp + 0x60], eax
jmp 0x4488b2
movsx eax, byte [edi]
sub eax, 0x61
je 0x44888e
dec eax
je 0x448889
sub eax, 4
je 0x448884
sub eax, 8
je 0x44887f
sub eax, 4
je 0x44887a
dec eax
dec eax
je 0x448875
dec eax
dec eax
jne 0x448891
mov byte [edi], 0xb
jmp 0x448891
mov byte [edi], 9
jmp 0x448891
mov byte [edi], 0xd
jmp 0x448891
mov byte [edi], 0xa
jmp 0x448891
mov byte [edi], 0xc
jmp 0x448891
mov byte [edi], 8
jmp 0x448891
mov byte [edi], 7
push edi
call fcn.00457930
inc eax
push eax
push edi
push dword [ebp + 0x54]
call fcn.00457b20
mov eax, dword [ebp + 0x54]
add esp, 0x10
cmp byte [eax], 0x3a
jne 0x4488b5
cmp byte [edi], 0x3a
jne 0x4488b5
mov dword [ebp + 0x54], edi
inc dword [ebp + 0x54]
mov edi, dword [ebp + 0x54]
jmp 0x448810
cmp dword [ebp + 0x60], ebx
jne 0x4488c8
mov dword [ebp + 0x4c], ebx
cmp dword [ebp + 0x4c], ebx
jne 0x44892c
push 0x45df58
push dword [ebp + 0x68]
call fcn.004579c0
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x60], eax
je 0x448c1f
cmp eax, dword [ebp + 0x68]
jne 0x4488f6
cmp byte [eax + 2], 0x3a
jne 0x4488f6
inc eax
mov dword [ebp + 0x60], eax
push dword [ebp + 0x60]
push dword [ebp + 0x68]
call fcn.00439826
pop ecx
pop ecx
push ebx
mov edi, eax
mov al, byte [edi]
push ebx
push dword [ebp + 0x68]
mov byte [ebp + 0x4b], al
mov byte [edi], bl
call fcn.00401ea8
pop ecx
push eax
call fcn.00410ca7
add esp, 0xc
test eax, eax
jne 0x448927
mov dword [ebp + 0x60], ebx
mov al, byte [ebp + 0x4b]
mov byte [edi], al
cmp dword [ebp + 0x60], ebx
je 0x448c1f
mov eax, dword [ebp + 0x68]
cmp dword [ebp + 0x60], eax
jbe 0x448c1f
mov eax, dword [0x465108]
cmp dword [eax + 0x94], ebx
jne 0x449005
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x448962
cmp byte [eax], 0x1b
je 0x44900f
mov eax, dword [ebp + 0x60]
add dword [ebp + 0x60], 2
cmp dword [ebp + 0x4c], ebx
mov byte [eax], bl
jne 0x448af2
mov edi, dword [ebp + 0x60]
push 0xffffffffffffffff
push edi
call fcn.0040a61a
push 0xffffffffffffffff
push dword [ebp + 0x68]
call fcn.0040a669
add esp, 0x10
cmp byte [edi], bl
mov dword [ebp + 0x54], edi
je 0x448af2
push ebx
push ebx
push dword [ebp + 0x68]
call fcn.00410fe2
mov edi, dword [0x45a484]
add esp, 0xc
push ebx
mov dword [ebp + 0x5c], eax
call edi
push eax
push 1
push ebx
push ebx
push dword [ebp + 0x5c]
call fcn.00415bcf
add esp, 0x14
cmp al, bl
mov byte [ebp + 8], al
je 0x448af2
mov eax, dword [ebp + 0x60]
cmp byte [eax + 1], bl
je 0x4489f9
push ebx
push ebx
push eax
call fcn.00410fe2
add esp, 0xc
push ebx
mov dword [ebp + 0x54], eax
call edi
push eax
push 1
push ebx
push ebx
push dword [ebp + 0x54]
call fcn.00415bcf
add esp, 0x14
mov byte [ebp + 0x36], al
jmp 0x4489fd
mov byte [ebp + 0x36], 0xff
cmp byte [ebp + 0x36], bl
je 0x448af2
push dword [ebp + 0x36]
call fcn.00444ec0
push dword [ebp + 8]
mov byte [ebp + 0x4a], al
call fcn.00444ec0
test al, al
pop ecx
pop ecx
jne 0x448a28
cmp byte [ebp + 0x4a], bl
mov byte [ebp + 0x3d], 1
jne 0x448a2b
mov byte [ebp + 0x3d], bl
mov edi, dword [ebp + 0x5c]
push edi
call fcn.00457930
cmp eax, 1
pop ecx
jne 0x448a4e
xor eax, eax
mov al, byte [edi]
push eax
call dword [0x45a498]
test eax, eax
mov eax, 0x45e2bc
jne 0x448a53
mov eax, 0x45a5d8
push dword [ebp + 0x68]
push eax
push str._s_s
lea eax, [ebp - 0x16c]
push 0x20
push eax
call fcn.0040a6cf
push 0x20
push dword [ebp + 0x54]
lea eax, [ebp - 0x38]
push eax
call fcn.0043961e
push 8
push dword [ebp + 0x60]
lea eax, [ebp - 8]
push eax
call fcn.0043961e
mov eax, dword [ebp + 0x54]
sub eax, dword [ebp + 0x60]
add esp, 0x2c
cmp eax, 8
jae 0x448a98
mov byte [ebp + eax - 8], bl
cmp byte [ebp - 8], bl
mov dword [ebp + 0x2c], ebx
jne 0x448e2b
movzx eax, byte [ebp + 0x36]
sub eax, 0xd
je 0x448ad7
sub eax, 4
je 0x448abf
dec eax
dec eax
je 0x448aef
sub eax, 0x4c
jne 0x448e2b
push 0x45bfa8
push dword [ebp + 0x60]
call fcn.004398da
test eax, eax
pop ecx
pop ecx
jne 0x448aef
jmp 0x448e2b
lea eax, [ebp - 0x38]
push str.Return
push eax
call fcn.00442231
test eax, eax
pop ecx
pop ecx
jne 0x448e2b
mov byte [ebp + 0x36], bl
cmp byte [esi + 0x50], bl
je 0x448b18
push ebx
push 0xff
push ebx
push 0x66
mov ecx, esi
mov byte [esi + 0x50], bl
call fcn.0044b08f
test eax, eax
je 0x44907d
mov dword [esi + 0x23c], ebx
push 1
push dword [ebp + 0x68]
mov ecx, esi
call fcn.0044f75b
test eax, eax
je 0x44907d
mov edi, dword [ebp + 0x60]
cmp byte [edi], bl
mov dword [ebp + 0x54], ebx
je 0x448b86
cmp dword [ebp + 0x4c], ebx
jne 0x448b72
push ebx
push edi
call fcn.00410434
cmp ax, bx
pop ecx
pop ecx
mov dword [ebp + 0x54], eax
jne 0x448b72
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.004490f0
neg al
sbb al, al
pop ecx
pop ecx
mov ecx, esi
and eax, 3
push eax
push edi
call fcn.00449a86
test eax, eax
je 0x44907d
push ebx
push ebx
push ebx
push 0x66
mov ecx, esi
call fcn.0044b08f
test eax, eax
je 0x44907d
mov ecx, dword [ebp + 0x4c]
cmp ecx, ebx
je 0x448bb1
cmp byte [ecx], bl
je 0x449022
mov eax, dword [ebp + 0x24]
cmp eax, ebx
jne 0x448ba1
mov eax, 0x45a5d8
push dword [ebp + 0x10]
push edi
push ecx
push eax
push dword [esi + 0x10]
call fcn.0040f8e6
jmp 0x448c17
lea eax, [ebp + 0xc]
push eax
push dword [ebp + 0x68]
call fcn.00410bc6
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
je 0x448c07
mov eax, dword [ebp + 0x54]
cmp ax, bx
je 0x448bd6
mov word [edi + 2], ax
jmp 0x448e2b
mov ecx, edi
call fcn.00411b1f
test eax, eax
jne 0x44902c
push dword [ebp + 0xc]
mov ecx, edi
push dword [esi + 0x10]
call fcn.004119e7
test eax, eax
jne 0x448e2b
push dword [ebp + 0x68]
push str.Out_of_memory.
jmp 0x448feb
push ebx
push dword [ebp + 0xc]
push ebx
push dword [ebp + 0x54]
push dword [esi + 0x10]
call fcn.004103a9
add esp, 0x14
jmp 0x448e23
mov edx, dword [ebp + 0x5c]
mov edi, dword [ebp + 0x68]
cmp byte [edx + edi - 1], 0x3a
jne 0x448cfa
cmp edx, 1
je 0x44903c
mov al, byte [edi]
cmp al, bl
mov ecx, edi
je 0x448c73
cmp al, 0x20
je 0x448cfa
cmp al, 9
je 0x448cfa
cmp al, byte [0x465090]
je 0x448cfa
cmp al, byte [0x465092]
je 0x448cfa
inc ecx
mov al, byte [ecx]
cmp al, bl
jne 0x448c41
mov edx, dword [ebp + 0x5c]
cmp byte [edx + edi - 2], 0x3a
jne 0x448cdc
cmp edx, 2
jbe 0x448cdc
cmp byte [esi + 0x50], bl
je 0x448ca5
push ebx
push 0xff
push ebx
push 0x66
mov ecx, esi
mov byte [esi + 0x50], bl
call fcn.0044b08f
test eax, eax
je 0x44907d
mov dword [esi + 0x23c], ebx
push edi
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.0040a6cf
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.0043bfd2
add esp, 0x18
mov eax, dword [ebp + 0x5c]
dec eax
push eax
push edi
mov byte [eax + edi], bl
call fcn.0040a669
pop ecx
pop ecx
push ebx
push edi
mov ecx, esi
call fcn.0044f75b
jmp 0x448e23
cmp byte [edi], 0x23
jne 0x448d2b
mov eax, dword [esi + 0x4c]
push edi
mov ecx, esi
mov dword [ebp + 0x24], eax
call fcn.00449174
cmp eax, ebx
je 0x44907d
cmp eax, 3
jne 0x448d2b
mov eax, dword [ebp + 4]
mov dword [esi + 0x48], eax
mov eax, dword [ebp + 0x24]
mov dword [esi + 0x4c], eax
jmp 0x448e2b
cmp byte [edi], 0x7d
jne 0x448d63
push ebx
push ebx
push ebx
push 0x6d
mov ecx, esi
call fcn.0044b08f
test eax, eax
je 0x44907d
inc edi
push edi
call fcn.00401ea8
cmp byte [eax], bl
pop ecx
mov dword [ebp + 0x68], eax
je 0x448e2b
mov edi, eax
push edi
call fcn.00457930
pop ecx
mov dword [ebp + 0x5c], eax
push str._t__
push edi
call fcn.004398da
cmp eax, ebx
pop ecx
pop ecx
mov dword [ebp + 0x4c], eax
jne 0x448d7f
mov eax, dword [ebp + 0x5c]
add eax, edi
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x4c]
push 0xffffffffffffffff
sub eax, edi
push eax
push str.Else
push edi
call fcn.0043963e
add esp, 0x10
test eax, eax
push ebx
push ebx
mov ecx, esi
push ebx
je 0x448dcd
cmp byte [edi], 0x7b
jne 0x448dc8
push 0x6c
call fcn.0044b08f
test eax, eax
je 0x44907d
inc edi
push edi
call fcn.00401ea8
mov edi, eax
cmp byte [edi], bl
pop ecx
je 0x448e2b
mov dword [esi + 0x23c], ebx
jmp 0x448e05
push ebx
push ebx
push ebx
jmp 0x448e1d
push 9
call fcn.0044b08f
test eax, eax
je 0x44907d
push dword [ebp + 0x4c]
mov dword [esi + 0x23c], ebx
call fcn.00401ea8
mov edi, eax
mov al, byte [edi]
cmp al, byte [0x465090]
pop ecx
jne 0x448e01
inc edi
push edi
call fcn.00401ea8
pop ecx
mov edi, eax
cmp byte [edi], bl
je 0x448e2b
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
call fcn.004490f0
neg al
sbb al, al
pop ecx
pop ecx
mov ecx, esi
and eax, 3
push eax
push edi
call fcn.00449a86
test eax, eax
je 0x44907d
cmp byte [ebp + 0x36], bl
je 0x448fb9
inc dword [ebp + 0x2c]
mov eax, dword [ebp + 0x2c]
dec eax
je 0x448f41
dec eax
je 0x448e85
dec eax
je 0x448f60
sub eax, 7
jne 0x448fb9
cmp byte [ebp + 0x36], 0x12
mov ecx, 0x45a5d8
je 0x448e6b
cmp byte [ebp + 0x36], 0xa3
jbe 0x448ed8
cmp byte [ebp + 0x36], 0xa5
ja 0x448ed8
movzx eax, byte [ebp + 8]
sub eax, 0x11
je 0x448ed3
sub eax, 0x91
je 0x448ed3
dec eax
jne 0x448ed8
mov ecx, str.RCtrl_up
jmp 0x448ed8
push 0x45e234
push dword [ebp + 0x68]
call fcn.00457700
cmp byte [ebp + 0x4a], bl
pop ecx
pop ecx
push ebx
lea eax, [ebp + 0x68]
push 1
push eax
setne al
add al, 0xb9
mov ecx, esi
push eax
call fcn.0044b08f
cmp byte [ebp + 0x3d], bl
je 0x448e54
lea eax, [ebp - 0x38]
push eax
push str.if_not_GetKeyState___s__
push dword [ebp + 0x68]
call fcn.0040a7ab
add esp, 0xc
mov dword [ebp + 0x5c], eax
mov dword [ebp + 0x2c], 9
jmp 0x4487b2
mov ecx, str.LCtrl_up
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 8]
push eax
push ecx
push str.Blind_s_s_s_DownTemp
push dword [ebp + 0x68]
mov dword [esi + 0x23c], ebx
call fcn.0040a7ab
add esp, 0x14
push ebx
push 1
lea eax, [ebp + 0x68]
push eax
push 0x41
mov ecx, esi
call fcn.0044b08f
test eax, eax
mov ecx, esi
je 0x44907f
push ebx
push ebx
push ebx
push 0x66
call fcn.0044b08f
lea eax, [ebp - 0x16c]
push eax
push str._s_up::
push dword [ebp + 0x68]
call fcn.0040a7ab
add esp, 0xc
mov dword [ebp + 0x5c], eax
mov dword [ebp + 0x2c], 2
jmp 0x4487b2
lea eax, [ebp - 0x16c]
push eax
push str._s::
push dword [ebp + 0x68]
call fcn.0040a7ab
add esp, 0xc
mov dword [ebp + 0x5c], eax
jmp 0x4487b2
push 0x45e234
push dword [ebp + 0x68]
call fcn.00457700
cmp byte [ebp + 0x4a], bl
pop ecx
pop ecx
push ebx
lea eax, [ebp + 0x68]
push 1
push eax
setne al
add al, 0xb9
mov ecx, esi
push eax
call fcn.0044b08f
lea eax, [ebp - 0x38]
push eax
push str.Blind_s_Up
push dword [ebp + 0x68]
call fcn.0040a7ab
add esp, 0xc
push ebx
push 1
lea eax, [ebp + 0x68]
push eax
push 0x41
mov ecx, esi
call fcn.0044b08f
push ebx
push ebx
push ebx
push 0x66
mov ecx, esi
call fcn.0044b08f
mov byte [ebp + 0x36], bl
mov ecx, dword [ebp + 0x58]
mov eax, dword [ebp + 0x50]
mov dword [ebp + 0x5c], ecx
lea ecx, [ebp - 0x62b4]
cmp eax, ecx
mov dword [ebp + 0x68], eax
jne 0x448fdd
lea eax, [ebp - 0xe2bc]
mov dword [ebp + 0x50], eax
jmp 0x4480d0
lea eax, [ebp - 0x62b4]
jmp 0x448fd5
push edi
push str.Continuation_section_too_long.
mov ecx, esi
call fcn.0044bffc
jmp 0x44907d
lea eax, [ebp - 0xa2b8]
push eax
push str.Functions_cannot_contain_functions.
jmp 0x448fed
push dword [ebp + 0x68]
push str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
jmp 0x448feb
push dword [ebp + 0x68]
mov eax, dword [esi + 4]
mov dword [esi + 0x23c], eax
push str.IfWin_should_be_IfWin.
jmp 0x448feb
push dword [ebp + 0x68]
push str.This_hotstring_is_missing_its_abbreviation.
jmp 0x448feb
push dword [ebp + 0x68]
mov dword [esi + 0x23c], ebx
push str.Duplicate_hotkey.
jmp 0x448feb
push edi
push str.This_line_does_not_contain_a_recognized_action.
jmp 0x448feb
push dword [ebp + 0x68]
push str.Missing____
jmp 0x448feb
push dword [ebp + 0x54]
jmp 0x448fe6
cmp byte [ebp - 0xa2b8], bl
je 0x449093
mov eax, dword [ebp + 0x14]
mov edi, dword [esi + 0x4c]
push ebx
push ebx
push ebx
push ebx
push ebx
mov dword [esi + 0x4c], eax
push 3
lea eax, [ebp - 0xa2b8]
push eax
mov ecx, esi
call fcn.00449a86
test eax, eax
jne 0x449090
mov ecx, esi
push dword [ebp + 0x64]
lea eax, [ebp - 0x14c]
push eax
call fcn.00450277
jmp 0x4490e6
mov dword [esi + 0x4c], edi
cmp byte [ebp + 0x3b], bl
je 0x4490a7
push dword [ebp + 0x30]
push ebx
push dword [ebp + 0x64]
call fcn.00457800
add esp, 0xc
push dword [ebp + 0x64]
call fcn.0043ea15
pop ecx
lea ecx, [ebp - 0x14c]
call fcn.0045072b
xor eax, eax
inc eax
jmp 0x4490e6
lea ecx, [ebp - 0x14c]
call fcn.0045072b
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.0043bfd2
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebx
add ebp, 0x6c
leave
ret 0xc