Function at 0x4199e0
Capabilities:
Open clipboard
Read clipboard data
Write clipboard data

Disassembly:
enter 0x1ec, 1
push ebx
push ecx
push edx
mov dword [ebp - 8], esp
mov byte [ebp - 0xcc], 0
mov byte [ebp - 0xd0], 0
mov eax, dword [0x4a91ad]
movsx ebx, word [ebp + 0x24]
movsx ecx, word [ebp + 0x20]
imul ecx, ecx, 0xff
mov edi, eax
mov esi, dword [edi + 0x281]
lea edi, [esi + ecx - 0x100]
movzx ecx, byte [edi + ebx]
mov word [eax + 0xb7f], cx
mov eax, dword [0x4a91ad]
call fcn.00419952
mov bx, word [ebp + 0x24]
mov word [ebp - 0xc8], bx
mov eax, dword [ebp + 8]
lea edi, [ebp - 0x94]
mov esi, eax
push 0x80
call fcn.00401950
mov word [ebp - 0xc4], 1
cmp byte [ebp + 0x10], 0x41
je 0x419aa7
mov eax, dword [ebp + 8]
movzx ebx, byte [eax]
movsx ecx, bx
test ecx, ecx
jle 0x419aa7
mov word [ebp - 0xd8], cx
mov word [ebp - 0xc0], 0
inc word [ebp - 0xc0]
movsx eax, word [ebp - 0xc0]
cmp byte [ebp + eax - 0x94], 0x20
je 0x419a9e
movsx ebx, ax
mov byte [ebp + ebx - 0x94], 0x2a
dec word [ebp - 0xd8]
jne 0x419a7b
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
mov cl, byte [ebp + 0x1c]
push ecx
call fcn.00408740
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1d8]
push ecx
lea eax, [ebp - 0x94]
push eax
push 1
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1d8]
push eax
call fcn.00404170
mov eax, dword [0x4a91ad]
mov dword [ebp - 0xdc], eax
mov bl, byte [ebp - 0xc8]
push ebx
mov al, byte [ebp + 0x20]
push eax
mov eax, dword [ebp - 0xdc]
call fcn.004198c2
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp - 0xdc]
call fcn.00412252
mov byte [ebp - 0xb0], al
mov bl, byte [ebp - 0x10]
mov byte [ebp - 0xac], bl
cmp byte [ebp - 0xac], 0xfe
jne 0x419b35
mov byte [ebp - 0xb0], 0
mov al, byte [ebp - 0xb0]
cmp al, 7
jne 0x419b60
mov bl, byte [ebp - 0xd0]
test bl, bl
jne 0x419b50
mov ecx, 1
jmp 0x419b55
mov ecx, 0
mov byte [ebp - 0xd0], cl
jmp 0x41a7a4
cmp al, 1
jne 0x419c4c
movsx ebx, word [ebp + 0x18]
movsx ecx, word [ebp + 0x24]
add ecx, ebx
movsx eax, word [ebp - 0xc4]
sub ecx, eax
movsx eax, word [ebp - 0xc8]
cmp ecx, eax
jl 0x419c47
movsx ecx, word [ebp + 0x24]
movsx eax, ax
sub eax, ecx
movsx ebx, word [ebp - 0xc4]
add eax, ebx
movsx eax, ax
movsx ebx, word [ebp + 0x18]
dec ebx
movsx ebx, bx
sub ebx, eax
jl 0x419bfc
inc ebx
mov word [ebp - 0xe0], bx
mov word [ebp - 0xc0], ax
jmp 0x419bc5
inc word [ebp - 0xc0]
movsx eax, word [ebp - 0xc0]
mov edi, dword [ebp + 8]
movsx ebx, ax
mov esi, edi
mov cl, byte [edi + eax + 1]
mov byte [esi + ebx], cl
movsx eax, word [ebp - 0xc0]
movsx ebx, ax
mov cl, byte [ebp + eax - 0x93]
mov byte [ebp + ebx - 0x94], cl
dec word [ebp - 0xe0]
jne 0x419bbe
movsx eax, word [ebp + 0x18]
mov edi, dword [ebp + 8]
mov byte [edi + eax], 0x20
movsx eax, word [ebp + 0x18]
mov byte [ebp + eax - 0x94], 0x20
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e0]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e0]
push eax
call fcn.00404170
jmp 0x41a7a4
cmp al, 0xe
jne 0x419cb9
mov bx, word [ebp - 0xc8]
cmp word [ebp + 0x24], bx
jge 0x419c66
dec word [ebp - 0xc8]
jmp 0x419cb4
cmp word [ebp - 0xc4], 1
jle 0x419cad
dec word [ebp - 0xc4]
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e0]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e0]
push eax
call fcn.00404170
jmp 0x419cb4
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0xf
jne 0x419d52
movsx ebx, word [ebp + 0x1c]
movsx ecx, word [ebp + 0x24]
add ecx, ebx
dec ecx
movsx eax, word [ebp - 0xc8]
cmp ecx, eax
jle 0x419ce1
inc word [ebp - 0xc8]
jmp 0x419d4d
mov cx, word [ebp + 0x18]
cmp word [ebp + 0x1c], cx
jge 0x419d46
movsx eax, word [ebp - 0xc4]
movsx ebx, bx
add ebx, eax
dec ebx
movsx eax, cx
cmp eax, ebx
jle 0x419d3d
inc word [ebp - 0xc4]
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e0]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e0]
push eax
call fcn.00404170
jmp 0x419d44
mov byte [ebp - 0xcc], 1
jmp 0x419d4d
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 2
jne 0x419e53
mov bx, word [ebp - 0xc8]
cmp word [ebp + 0x24], bx
jl 0x419d75
cmp word [ebp - 0xc4], 1
jle 0x419e4e
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc8]
sub ebx, eax
movsx ecx, word [ebp - 0xc4]
add ebx, ecx
movsx ebx, bx
movsx eax, word [ebp + 0x18]
sub eax, ebx
jl 0x419de6
inc eax
mov word [ebp - 0xe4], ax
mov word [ebp - 0xc0], bx
jmp 0x419daf
inc word [ebp - 0xc0]
movsx eax, word [ebp - 0xc0]
mov edi, dword [ebp + 8]
movsx ebx, ax
mov esi, edi
mov cl, byte [esi + ebx]
mov byte [edi + eax - 1], cl
movsx eax, word [ebp - 0xc0]
movsx ebx, ax
mov cl, byte [ebp + eax - 0x94]
mov byte [ebp + ebx - 0x95], cl
dec word [ebp - 0xe4]
jne 0x419da8
movsx eax, word [ebp + 0x18]
mov edi, dword [ebp + 8]
mov byte [edi + eax], 0x20
movsx eax, word [ebp + 0x18]
mov byte [ebp + eax - 0x94], 0x20
mov ax, word [ebp - 0xc8]
cmp word [ebp + 0x24], ax
jge 0x419e13
dec word [ebp - 0xc8]
jmp 0x419e1a
dec word [ebp - 0xc4]
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e4]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00404170
jmp 0x41a7a4
cmp al, 8
jne 0x419eae
mov bx, word [ebp + 0x24]
mov word [ebp - 0xc8], bx
cmp word [ebp - 0xc4], 1
jle 0x419ea9
mov word [ebp - 0xc4], 1
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e4]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00404170
jmp 0x41a7a4
cmp al, 9
jne 0x419f93
mov bx, word [ebp + 0x18]
mov word [ebp - 0xc0], bx
cmp word [ebp - 0xc0], 1
jle 0x419ee4
movsx eax, word [ebp - 0xc0]
mov edi, dword [ebp + 8]
cmp byte [edi + eax], 0x20
jne 0x419ee4
dec word [ebp - 0xc0]
jmp 0x419ec1
inc word [ebp - 0xc0]
mov ax, word [ebp - 0xc0]
cmp word [ebp + 0x18], ax
jge 0x419f03
mov bx, word [ebp + 0x18]
mov word [ebp - 0xc0], bx
mov ax, word [ebp - 0xc0]
cmp word [ebp + 0x1c], ax
jge 0x419f3b
movsx ebx, word [ebp + 0x1c]
movsx ecx, word [ebp + 0x24]
add ecx, ebx
dec ecx
mov word [ebp - 0xc8], cx
movsx eax, word [ebp + 0x1c]
movsx ebx, word [ebp - 0xc0]
sub ebx, eax
inc ebx
mov word [ebp - 0xc4], bx
jmp 0x419f5a
mov word [ebp - 0xc4], 1
movsx eax, word [ebp - 0xc0]
movsx ebx, word [ebp + 0x24]
add ebx, eax
dec ebx
mov word [ebp - 0xc8], bx
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e4]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00404170
jmp 0x41a7a4
cmp al, 0xf
jne 0x41a02c
movsx ebx, word [ebp + 0x1c]
movsx ecx, word [ebp + 0x24]
add ecx, ebx
dec ecx
movsx eax, word [ebp - 0xc8]
cmp ecx, eax
jle 0x419fbb
inc word [ebp - 0xc8]
jmp 0x41a027
mov cx, word [ebp + 0x18]
cmp word [ebp + 0x1c], cx
jge 0x41a020
movsx eax, word [ebp - 0xc4]
movsx ebx, bx
add ebx, eax
dec ebx
movsx eax, cx
cmp eax, ebx
jl 0x41a017
inc word [ebp - 0xc4]
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e4]
push ecx
lea eax, [ebp - 0x94]
push eax
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00404170
jmp 0x41a01e
mov byte [ebp - 0xcc], 1
jmp 0x41a027
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0
jne 0x41a56f
movzx ebx, word [ebp - 0x10]
mov eax, ebx
cmp eax, 3
jne 0x41a128
mov eax, dword [0x4a91ad]
push dword [eax + 0xaf5]
call sub.user32.dll_OpenClipboard
test al, al
je 0x41a123
call sub.user32.dll_EmptyClipboard
mov eax, dword [ebp + 8]
movzx ebx, byte [eax]
inc ebx
push ebx
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 0x98], eax
push eax
call sub.kernel32.dll_GlobalFlags
cmp eax, 0x8000
je 0x41a11e
lea eax, [ebp - 0xa0]
push eax
mov edi, dword [ebp + 8]
movzx ebx, byte [edi]
inc ebx
push ebx
call fcn.00403920
push dword [ebp - 0xa0]
lea eax, [ebp - 0x1e4]
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.004189d0
lea ebx, [ebp - 0x1e4]
push ebx
call fcn.00401a00
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalLock
push eax
push dword [ebp - 0xa0]
lea eax, [ebp - 0x1e4]
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.004189d0
movzx ebx, byte [ebp - 0x1e4]
inc ebx
push ebx
call fcn.0041bb00
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalUnlock
push dword [ebp - 0x98]
push 1
call sub.user32.dll_SetClipboardData
lea eax, [ebp - 0xa0]
push eax
mov edi, dword [ebp + 8]
movzx ebx, byte [edi]
inc ebx
push ebx
call fcn.004030f0
call sub.user32.dll_CloseClipboard
jmp 0x41a56a
cmp eax, 0x16
jne 0x41a340
mov eax, dword [0x4a91ad]
push dword [eax + 0xaf5]
call sub.user32.dll_OpenClipboard
test al, al
je 0x41a33b
push 1
call sub.user32.dll_GetClipboardData
mov dword [ebp - 0x98], eax
push eax
call sub.kernel32.dll_GlobalFlags
cmp eax, 0x8000
je 0x41a336
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalFlags
cmp eax, 0x4000
je 0x41a336
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalSize
dec eax
mov dword [ebp - 0x9c], eax
test eax, eax
jbe 0x41a336
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalLock
mov dword [ebp - 0xa4], eax
test eax, eax
je 0x41a336
movsx ebx, word [ebp + 0x18]
mov eax, dword [ebp - 0x9c]
test eax, eax
jl 0x41a1c3
cmp ebx, eax
jge 0x41a1cf
movsx eax, word [ebp + 0x18]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xa8], eax
movsx eax, word [ebp + 0x24]
add eax, dword [ebp - 0x9c]
movsx ebx, word [ebp - 0xc4]
sub eax, ebx
movsx ecx, word [ebp - 0xc8]
cmp eax, ecx
jl 0x41a32b
movsx eax, cx
dec eax
mov word [ebp - 0xc0], ax
inc word [ebp - 0xc0]
movsx eax, word [ebp - 0xc8]
movsx ebx, word [ebp - 0xc0]
sub ebx, eax
mov edi, dword [ebp - 0xa8]
movzx ebx, byte [edi + ebx]
mov esi, 0x4996a7
mov eax, ebx
push 0xf0000
call fcn.0040148e
test al, al
jne 0x41a2aa
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc0]
sub ebx, eax
movsx ecx, word [ebp - 0xc4]
add ebx, ecx
mov edi, dword [ebp + 8]
movsx edx, word [ebp - 0xc8]
movsx eax, word [ebp - 0xc0]
sub eax, edx
mov esi, dword [ebp - 0xa8]
mov al, byte [esi + eax]
mov byte [edi + ebx], al
movsx eax, word [ebp - 0xc8]
movsx ebx, word [ebp - 0xc0]
sub ebx, eax
mov edi, dword [ebp - 0xa8]
movsx ecx, word [ebp + 0x24]
movsx edx, word [ebp - 0xc0]
sub edx, ecx
movsx eax, word [ebp - 0xc4]
add edx, eax
mov bl, byte [edi + ebx]
mov byte [ebp + edx - 0x94], bl
movsx eax, word [ebp + 0x24]
add eax, dword [ebp - 0x9c]
movsx ebx, word [ebp - 0xc4]
sub eax, ebx
movsx ecx, word [ebp - 0xc0]
cmp eax, ecx
jle 0x41a2f7
movsx eax, word [ebp - 0xc8]
movsx edx, cx
sub edx, eax
mov edi, dword [ebp - 0xa8]
movzx edx, byte [edi + edx]
mov esi, 0x4996a9
mov eax, edx
push 0xf0000
call fcn.0040148e
test al, al
je 0x41a209
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e4]
push ecx
lea edx, [ebp - 0x94]
push edx
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00404170
push dword [ebp - 0x98]
call sub.kernel32.dll_GlobalUnlock
call sub.user32.dll_CloseClipboard
jmp 0x41a56a
cmp byte [ebp + 0x14], 1
je 0x41a363
cmp byte [ebp + 0x14], 0
jne 0x41a36a
movzx eax, word [ebp - 0x10]
mov esi, 0x4996ab
push 0xf0030
call fcn.0040148e
test al, al
je 0x41a36a
mov eax, 1
jmp 0x41a36f
mov eax, 0
mov byte [ebp - 0xd4], al
test al, al
je 0x41a3b7
mov bl, byte [ebp - 0xd0]
test bl, bl
je 0x41a3a5
test bl, bl
je 0x41a3ac
movsx eax, word [ebp + 0x18]
movsx ecx, word [ebp + 0x24]
add ecx, eax
movsx edx, word [ebp - 0xc4]
sub ecx, edx
movsx eax, word [ebp - 0xc8]
cmp ecx, eax
jle 0x41a3ac
mov eax, 1
jmp 0x41a3b1
mov eax, 0
mov byte [ebp - 0xd4], al
mov al, byte [ebp - 0xd4]
test al, al
je 0x41a56a
mov bl, byte [ebp - 0xd0]
test bl, bl
je 0x41a463
movsx ecx, word [ebp + 0x18]
movsx edx, word [ebp + 0x24]
add edx, ecx
movsx eax, word [ebp - 0xc4]
sub edx, eax
movsx eax, word [ebp - 0xc8]
cmp edx, eax
jle 0x41a463
movsx edx, cx
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc8]
sub ebx, eax
movsx eax, word [ebp - 0xc4]
add ebx, eax
inc ebx
movsx ebx, bx
sub ebx, edx
jg 0x41a463
dec ebx
mov word [ebp - 0xe8], bx
mov word [ebp - 0xc0], dx
jmp 0x41a42c
dec word [ebp - 0xc0]
movsx eax, word [ebp - 0xc0]
mov edi, dword [ebp + 8]
movsx ebx, ax
mov esi, edi
mov cl, byte [edi + eax - 1]
mov byte [esi + ebx], cl
movsx eax, word [ebp - 0xc0]
movsx ebx, ax
mov cl, byte [ebp + eax - 0x95]
mov byte [ebp + ebx - 0x94], cl
inc word [ebp - 0xe8]
jne 0x41a425
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc8]
sub ebx, eax
movsx ecx, word [ebp - 0xc4]
add ebx, ecx
mov edi, dword [ebp + 8]
mov dl, byte [ebp - 0xac]
mov byte [edi + ebx], dl
cmp byte [ebp + 0x10], 0x41
jne 0x41a4b0
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc8]
sub ebx, eax
movsx ecx, word [ebp - 0xc4]
add ebx, ecx
mov dl, byte [ebp - 0xac]
mov byte [ebp + ebx - 0x94], dl
jmp 0x41a4ce
movsx eax, word [ebp + 0x24]
movsx ebx, word [ebp - 0xc8]
sub ebx, eax
movsx ecx, word [ebp - 0xc4]
add ebx, ecx
mov byte [ebp + ebx - 0x94], 0x2a
movsx eax, word [ebp + 0x1c]
movsx ebx, word [ebp + 0x24]
add ebx, eax
dec ebx
movsx ecx, word [ebp - 0xc8]
cmp ebx, ecx
jle 0x41a4ee
inc word [ebp - 0xc8]
jmp 0x41a526
mov bx, word [ebp + 0x18]
cmp word [ebp + 0x1c], bx
jge 0x41a51f
movsx edx, word [ebp - 0xc4]
movsx eax, ax
add eax, edx
dec eax
movsx ebx, bx
cmp ebx, eax
jle 0x41a516
inc word [ebp - 0xc4]
jmp 0x41a51d
mov byte [ebp - 0xcc], 1
jmp 0x41a526
mov byte [ebp - 0xcc], 1
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1e8]
push ecx
lea edx, [ebp - 0x94]
push edx
movsx eax, word [ebp - 0xc4]
push eax
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1e8]
push eax
call fcn.00404170
cmp byte [ebp - 0xcc], 1
jne 0x41a56a
mov byte [ebp - 0xb0], 0xf
jmp 0x41a7a4
cmp al, 0x21
jne 0x41a58a
mov bx, word [ebp - 0x10]
mov word [0x4a91bd], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x20
jne 0x41a5a5
mov bx, word [ebp - 0x10]
mov word [0x4a91bf], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x22
jne 0x41a5c0
mov bx, word [ebp - 0x10]
mov word [0x4a91c1], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x23
jne 0x41a5db
mov bx, word [ebp - 0x10]
mov word [0x4a91c3], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x2d
jne 0x41a5f6
mov bx, word [ebp - 0x10]
mov word [0x4a91c5], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x17
jne 0x41a61e
fld qword [0x4996ad]
fstp qword [ebp - 0xb8]
wait
lea ebx, [ebp - 0xb8]
push ebx
call fcn.0041ad50
mov byte [ebp - 0xb0], al
jmp 0x41a7a4
cmp al, 0x30
jne 0x41a63f
cmp dword [0x4a854c], 0
je 0x41a633
call dword [0x4a854c]
jmp 0x41a63a
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x31
jne 0x41a660
cmp dword [0x4a8550], 0
je 0x41a654
call dword [0x4a8550]
jmp 0x41a65b
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x28
jne 0x41a67b
mov bx, word [ebp - 0x10]
mov word [0x4a8f97], bx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x26
jne 0x41a6a3
mov bl, byte [ebp - 0x10]
push ebx
mov eax, dword [0x4a91ad]
call fcn.0041ad22
movzx ecx, al
mov word [0x4a91c7], cx
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x1e
jne 0x41a755
mov edi, dword [0x4a91ad]
mov dword [ebp - 0xec], edi
mov ax, word [edi + 0xb6d]
cmp word [ebp + 0x20], ax
jne 0x41a74c
mov edi, dword [ebp - 0xec]
mov ax, word [edi + 0xb6b]
cmp word [ebp + 0x24], ax
jg 0x41a74c
movsx ebx, word [ebp + 0x1c]
movsx eax, word [ebp + 0x24]
add eax, ebx
dec eax
movsx ecx, word [edi + 0xb6b]
cmp eax, ecx
jl 0x41a74c
mov word [ebp - 0xc8], cx
mov ax, word [ebp - 0xc8]
cmp word [ebp + 0x24], ax
jge 0x41a71e
push eax
mov bx, word [ebp + 0x20]
push ebx
call fcn.0041acd0
cmp al, 0x20
jne 0x41a71e
dec word [ebp - 0xc8]
jmp 0x41a6f9
mov eax, dword [ebp - 0xec]
mov bx, word [ebp - 0xc8]
cmp word [eax + 0xb6b], bx
jle 0x41a74a
push ebx
mov cx, word [ebp + 0x20]
push ecx
call fcn.0041acd0
cmp al, 0x20
je 0x41a74a
inc word [ebp - 0xc8]
jmp 0x41a753
mov byte [ebp - 0xcc], 1
jmp 0x41a7a4
cmp al, 0x25
je 0x41a79d
cmp al, 0x24
je 0x41a79d
cmp al, 5
je 0x41a79d
cmp al, 4
je 0x41a79d
cmp al, 3
je 0x41a79d
cmp al, 6
je 0x41a79d
cmp al, 0x29
je 0x41a79d
cmp al, 0x2a
je 0x41a79d
cmp al, 0x27
je 0x41a79d
cmp al, 0xb
je 0x41a79d
cmp al, 0xa
je 0x41a79d
cmp al, 0x2b
je 0x41a79d
cmp al, 0x1c
ja 0x41a78d
cmp al, 0x18
jae 0x41a79d
cmp al, 0x16
ja 0x41a795
cmp al, 0x11
jae 0x41a79d
cmp al, 0x10
je 0x41a79d
cmp al, 0xd
jne 0x41a7a4
mov byte [ebp - 0xcc], 1
mov al, byte [ebp - 0xcc]
test al, al
je 0x419ae6
mov edi, dword [0x4a91ad]
mov dword [ebp - 0xf0], edi
movsx eax, word [edi + 0xb7f]
cmp eax, 0x14
jne 0x41a7dc
mov eax, dword [ebp - 0xf0]
call fcn.0040b4a2
jmp 0x41a945
cmp eax, 0x15
jne 0x41a7f3
mov eax, dword [ebp - 0xf0]
call fcn.0041ac92
jmp 0x41a945
cmp eax, 0x16
jne 0x41a80a
mov eax, dword [ebp - 0xf0]
call fcn.0041ac52
jmp 0x41a945
cmp eax, 0x17
jne 0x41a821
mov eax, dword [ebp - 0xf0]
call fcn.0041ac12
jmp 0x41a945
cmp eax, 0x19
jne 0x41a838
mov eax, dword [ebp - 0xf0]
call fcn.0041abe2
jmp 0x41a945
cmp eax, 0x1a
jne 0x41a84f
mov eax, dword [ebp - 0xf0]
call fcn.0041aba2
jmp 0x41a945
cmp eax, 0x1b
jne 0x41a866
mov eax, dword [ebp - 0xf0]
call fcn.0041ab62
jmp 0x41a945
cmp eax, 0x1c
jne 0x41a87d
mov eax, dword [ebp - 0xf0]
call fcn.0041ab22
jmp 0x41a945
cmp eax, 0x1e
jne 0x41a894
mov eax, dword [ebp - 0xf0]
call fcn.00415572
jmp 0x41a945
cmp eax, 0x1f
jne 0x41a8ab
mov eax, dword [ebp - 0xf0]
call fcn.0041aae2
jmp 0x41a945
cmp eax, 0x20
jne 0x41a8c2
mov eax, dword [ebp - 0xf0]
call fcn.0041aaa2
jmp 0x41a945
cmp eax, 0x21
jne 0x41a8d6
mov eax, dword [ebp - 0xf0]
call fcn.0041aa62
jmp 0x41a945
cmp eax, 0x23
jne 0x41a8ea
mov eax, dword [ebp - 0xf0]
call fcn.00419892
jmp 0x41a945
cmp eax, 0x24
jne 0x41a8fe
mov eax, dword [ebp - 0xf0]
call fcn.0041aa22
jmp 0x41a945
cmp eax, 0x25
jne 0x41a912
mov eax, dword [ebp - 0xf0]
call fcn.0041a9e2
jmp 0x41a945
cmp eax, 0x26
jne 0x41a926
mov eax, dword [ebp - 0xf0]
call fcn.0041a9a2
jmp 0x41a945
cmp eax, 0xa
jne 0x41a93a
mov eax, dword [ebp - 0xf0]
call fcn.00419952
jmp 0x41a945
mov eax, dword [ebp - 0xf0]
call fcn.00419862
mov eax, dword [0x4a91ad]
mov word [eax + 0xb7f], 0
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
mov cl, byte [ebp + 0x1c]
push ecx
call fcn.00408740
mov al, byte [ebp + 0x24]
push eax
mov bl, byte [ebp + 0x20]
push ebx
lea ecx, [ebp - 0x1f0]
push ecx
lea edx, [ebp - 0x94]
push edx
push 1
movsx eax, word [ebp + 0x1c]
push eax
call fcn.00401cd0
lea eax, [ebp - 0x1f0]
push eax
call fcn.00404170
mov al, byte [ebp - 0xb0]
pop edx
pop ecx
pop ebx
leave
ret 0x20