Function at 0x45c760
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb8
push ebx
push esi
push edi
mov eax, dword [ebp + 0x24]
xor edx, edx
mov dword [eax], edx
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x28], 1
xor ecx, ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp + 0x30]
mov eax, dword [ecx]
mov dword [ebp - 4], eax
mov edx, dword [ebp + 0x34]
mov ecx, dword [edx]
mov dword [ebp - 8], ecx
xor edi, edi
xor eax, eax
mov dword [ebp - 0xc], eax
xor edx, edx
mov dword [ebp - 0x18], edx
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x461aca
inc dword [0x4f5430]
cmp dword [0x4f5430], 0x19
jle 0x45c7f9
push 3
call sub.USER32.dll_GetAsyncKeyState
test ax, ax
jge 0x45c7f1
push 0x50cbd8
push 0x8fd
call fcn.0041f178
push 0
call sub.USER32.dll_MessageBeep
xor eax, eax
jmp 0x461b67
xor edx, edx
mov dword [0x4f5430], edx
cmp dword [ebx + 0x18], 1
jne 0x45c817
cmp dword [ebp - 0x28], 2
jne 0x461a79
cmp ebx, dword [ebp - 0xc]
je 0x45c9fe
jmp 0x461a79
cmp dword [ebp - 0x28], 0
je 0x45cc77
cmp dword [ebp - 0x28], 1
jne 0x45c9f4
mov eax, dword [ebx]
cmp byte [eax], 0x5b
jne 0x45c8ad
cmp byte [eax + 1], 0
je 0x45c8a3
mov edx, dword [ebx]
cmp byte [edx + 1], 0x5b
jne 0x45c876
mov ecx, dword [ebx]
cmp byte [ecx + 2], 0
jne 0x45c876
mov eax, dword [ebx]
inc eax
mov edx, dword [ebp + 0x10]
push edi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
mov eax, dword [ebp + 0x10]
mov edx, dword [ebx]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
inc dword [ebp - 0x20]
mov edi, ebx
jmp 0x461a79
mov esi, dword [ebx]
cmp byte [esi], 0x5d
jne 0x461a79
mov al, byte [esi + 1]
test al, al
je 0x45c91e
cmp al, 0x5d
jne 0x45c8f1
inc esi
mov edx, dword [ebp + 0x10]
push esi
push edi
mov edi, esi
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x461a47
mov eax, dword [ebp + 0x10]
mov edx, dword [ebx]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
test edi, edi
je 0x461a79
cmp ebx, dword [edi + 0x30]
jne 0x45c995
mov eax, dword [ebp + 0x38]
mov eax, dword [eax]
test eax, eax
je 0x45c944
cmp edi, eax
jne 0x45c944
mov dword [0x50cfc8], 1
jmp 0x45c94c
xor edx, edx
mov dword [0x50cfc8], edx
mov ecx, dword [edi + 0x30]
push ecx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
push edi
mov edx, dword [ebp - 0x10]
push edx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
cmp dword [0x50cfc8], 0
je 0x45c97a
mov ecx, dword [ebp + 0x38]
mov eax, dword [ebp - 0x10]
mov dword [ecx], eax
mov ebx, dword [ebp - 0x10]
xor edi, edi
xor eax, eax
mov dword [ebp - 0xc], eax
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x28], 1
jmp 0x45c7b1
mov ecx, dword [ebx + 0x30]
mov dword [ebp - 0xc], ecx
push ebx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov ebx, dword [edi + 0x30]
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45c9bd
xor edx, edx
mov dword [ebx + 0x18], edx
xor ecx, ecx
mov dword [ebx + 0x1c], ecx
mov eax, dword [ebp + 0x38]
mov eax, dword [eax]
test eax, eax
je 0x45c9cf
cmp edi, eax
jne 0x45c9cf
mov edx, dword [ebp + 0x38]
mov dword [edx], ebx
push edi
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
cmp ebx, dword [ebp - 0x10]
jne 0x45c9e5
xor edi, edi
jmp 0x45c9e8
mov edi, dword [ebx + 0x34]
mov dword [ebp - 0x28], 2
jmp 0x45c7b1
cmp dword [ebp - 0x28], 2
jne 0x45cafe
cmp ebx, dword [ebp - 0xc]
jne 0x45cad1
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xc8
jle 0x45ca3c
mov eax, dword [0x4f29cc]
push eax
push 0
push 0x8fe
call fcn.0041f178
push eax
mov edx, dword [0x4fd9fc]
push edx
call fcn.004bd330
xor ecx, ecx
mov dword [ebp - 0x30], ecx
jmp 0x461b4c
cmp dword [ebp - 0x18], 0
je 0x45ca5b
xor eax, eax
mov dword [ebp - 0x18], eax
test edi, edi
je 0x45ca53
mov ebx, dword [edi + 0x30]
jmp 0x45c7b1
mov ebx, dword [ebp - 0x10]
jmp 0x45c7b1
test edi, edi
je 0x45ca64
mov ebx, dword [edi + 0x30]
jmp 0x45ca67
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x45ca93
cmp ebx, dword [ebp - 0xc]
jne 0x45ca74
xor ebx, ebx
jmp 0x45ca93
cmp dword [ebx + 0x18], 1
jne 0x45ca93
cmp dword [ebx + 0x10], 0
je 0x45ca8c
xor eax, eax
mov dword [ebx + 0x10], eax
xor edx, edx
mov dword [ebx + 0x18], edx
jmp 0x45ca93
mov ebx, dword [ebx + 0x30]
test ebx, ebx
jne 0x45ca6b
test ebx, ebx
je 0x45caab
test edi, edi
je 0x45caa3
mov ebx, dword [edi + 0x30]
jmp 0x45c7b1
mov ebx, dword [ebp - 0x10]
jmp 0x45c7b1
cmp dword [ebp - 0x20], 1
jle 0x45cab6
mov ebx, dword [ebp - 0x10]
jmp 0x45cab9
mov ebx, dword [ebp - 0xc]
xor edi, edi
xor eax, eax
mov dword [ebp - 0xc], eax
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x28], 1
jmp 0x45c7b1
mov edx, dword [ebx]
mov al, byte [edx]
cmp al, 0x5b
je 0x45cadd
cmp al, 0x5d
jne 0x45cafe
cmp byte [edx + 1], 0
jne 0x45cafe
mov ebx, dword [ebp - 0x10]
xor edi, edi
xor eax, eax
mov dword [ebp - 0xc], eax
xor edx, edx
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x28], 1
jmp 0x45c7b1
mov eax, dword [ebx]
cmp byte [eax], 0x24
jne 0x45cc77
cmp byte [eax + 1], 0x2b
jne 0x45cc77
cmp byte [eax + 2], 0
jne 0x45cc77
mov esi, dword [ebx + 0x30]
mov eax, dword [ebp + 0x38]
cmp ebx, dword [eax]
jne 0x45cb2c
mov edx, dword [ebp + 0x38]
mov dword [edx], esi
cmp ebx, edi
jne 0x45cb32
mov edi, esi
cmp ebx, dword [ebp - 0xc]
jne 0x45cb3a
mov dword [ebp - 0xc], esi
push ebx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
test esi, esi
je 0x461aca
mov edx, dword [esi]
cmp byte [edx], 0x24
jne 0x45cb6d
mov ecx, dword [esi]
cmp byte [ecx + 1], 0x2b
jne 0x45cb6d
mov eax, dword [esi]
cmp byte [eax + 2], 0
jne 0x45cb6d
mov ebx, esi
jmp 0x45c7b1
cmp esi, dword [ebp - 0x10]
jne 0x45cbb8
mov ebx, esi
mov eax, dword [ebp + 0x10]
mov edx, dword [esi]
push esi
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0
mov eax, dword [ebp + 0x10]
push eax
push ebx
mov edx, dword [ebp - 0x10]
push edx
call fcn.004b79ec
xor ecx, ecx
mov dword [ebx + 0x18], ecx
jmp 0x45cc5e
mov ebx, dword [esi + 0x34]
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
cmp dword [ebx + 8], 0
jne 0x45cbd6
mov edx, dword [ebx]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0040123c
add esp, 8
cmp dword [esi + 8], 0
jne 0x45cc22
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401318
pop ecx
push eax
mov edx, dword [esi]
push edx
call fcn.00401318
pop ecx
pop ecx
add ecx, eax
cmp ecx, 0x3b5
jbe 0x45cc13
push 0xa
push 0
push 0x4f544d
push 0
call fcn.0045bf34
mov dword [ebp - 0x30], eax
jmp 0x461b4c
mov eax, dword [esi]
push eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
mov ecx, dword [ebp + 0x38]
cmp esi, dword [ecx]
jne 0x45cc2e
mov eax, dword [ebp + 0x38]
mov dword [eax], ebx
cmp esi, edi
jne 0x45cc34
mov edi, ebx
cmp esi, dword [ebp - 0xc]
jne 0x45cc3c
mov dword [ebp - 0xc], ebx
push esi
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
push 0
mov edx, dword [ebp + 0x10]
push edx
push ebx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004b79ec
xor eax, eax
mov dword [ebx + 0x18], eax
test edi, edi
je 0x45cc66
cmp edi, ebx
je 0x45cc6f
test edi, edi
jne 0x45cc77
cmp ebx, dword [ebp - 0x10]
jne 0x45cc77
mov ebx, dword [ebx + 0x30]
jmp 0x45c7b1
mov edx, dword [ebp + 0x10]
mov byte [edx], 0
xor ecx, ecx
mov dword [ebp - 0x14], ecx
mov eax, dword [ebx]
cmp byte [eax + 1], 0x24
jne 0x45cc97
mov edx, dword [ebx]
push edx
call fcn.0048b4fc
mov byte [ebp - 0x19], al
jmp 0x45cc9b
mov byte [ebp - 0x19], 0
cmp byte [ebp - 0x19], 0
jne 0x45cd13
mov ecx, dword [ebx]
cmp byte [ecx], 0x23
jne 0x45cd13
mov eax, dword [ebx]
cmp byte [eax + 1], 0
je 0x45ccdd
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx]
push edi
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
cmp dword [ebp + 0x2c], 0
je 0x45ccf5
mov eax, dword [ebp + 0x4c]
push eax
mov edx, dword [ebp + 0x10]
push edx
push 0x4f5451
call fcn.004c331c
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
jne 0x461a47
mov eax, dword [ebp + 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004b7eb8
jmp 0x461a47
cmp byte [ebp - 0x19], 0
jne 0x45cd24
mov ecx, dword [ebx]
cmp byte [ecx], 0x24
jne 0x461924
mov esi, dword [ebx]
inc esi
cmp byte [esi], 0
jne 0x45cd41
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f5458
mov edi, eax
mov eax, edi
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
cmp byte [ebp - 0x19], 0
je 0x45cd51
inc esi
cmp byte [esi], 0
je 0x461a47
cmp byte [esi], 0x24
jne 0x45cd79
mov dword [ebp - 0x14], 1
inc esi
cmp byte [esi], 0
jne 0x45cd79
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f545b
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
xor edx, edx
mov dl, byte [esi]
test byte [edx*2 + 0x500706], 4
je 0x45cda2
mov cl, byte [ebp - 0x19]
push ecx
mov eax, dword [ebp + 0x20]
push eax
mov edx, dword [ebp + 0x1c]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push esi
call fcn.004b7280
jmp 0x461a47
xor eax, eax
mov al, byte [esi]
push eax
call fcn.00408bd0
pop ecx
add eax, 0xffffffdf
cmp eax, 0x57
ja case.0x45cdbf.33
mov al, byte [eax + 0x45cdc6]
jmp dword [eax*4 + 0x45ce1e]
cmp byte [esi + 1], 0x20
jne 0x45cef7
cmp byte [esi + 2], 0
je 0x461a47
add esi, 2
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [ebx]
mov edx, dword [ebp + 0x10]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
xor eax, eax
mov dword [ebx + 0x18], eax
jmp 0x45c7b1
cmp ebx, dword [ebp - 0x10]
jne 0x45cf32
mov edx, dword [ebp + 0x38]
cmp ebx, dword [edx]
jne 0x45cf0b
mov ecx, dword [ebp + 0x38]
mov eax, dword [ebx + 0x30]
mov dword [ecx], eax
cmp ebx, edi
jne 0x45cf12
mov edi, dword [ebx + 0x30]
cmp ebx, dword [ebp - 0xc]
jne 0x45cf1d
mov eax, dword [ebx + 0x30]
mov dword [ebp - 0xc], eax
push ebx
mov edx, dword [ebp - 0x10]
push edx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0x10]
jmp 0x45c7b1
mov eax, dword [ebx + 0x34]
cmp dword [eax + 0x18], 2
jne 0x45cf71
mov edx, dword [ebp + 0x38]
mov ecx, dword [edx]
cmp ecx, dword [ebx + 0x34]
jne 0x45cf4a
mov eax, dword [ebp + 0x38]
mov dword [eax], ebx
cmp edi, dword [ebx + 0x34]
jne 0x45cf51
mov edi, ebx
mov eax, dword [ebx + 0x34]
cmp eax, dword [ebp - 0xc]
jne 0x45cf5c
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x34]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
jmp 0x45c7b1
cmp dword [ebx + 0x30], 0
jne 0x45cfac
mov eax, dword [ebp + 0x38]
cmp ebx, dword [eax]
jne 0x45cf86
mov edx, dword [ebp + 0x38]
mov ecx, dword [ebx + 0x34]
mov dword [edx], ecx
cmp ebx, edi
jne 0x45cf8d
mov edi, dword [ebx + 0x34]
cmp ebx, dword [ebp - 0xc]
jne 0x45cf98
mov eax, dword [ebx + 0x34]
mov dword [ebp - 0xc], eax
push ebx
mov edx, dword [ebp - 0x10]
push edx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
xor ebx, ebx
jmp 0x45c7b1
mov eax, dword [ebx + 0x30]
cmp dword [eax + 0x10], 0
je 0x45cfc1
mov dword [ebx + 0x18], 2
jmp 0x461a79
mov edx, dword [ebx + 0x34]
cmp dword [edx + 0x18], 1
jne 0x45d0c0
mov ecx, dword [ebx + 0x30]
cmp dword [ecx + 0x18], 1
jne 0x45d0c0
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
mov edx, dword [ebx + 0x34]
cmp dword [edx + 8], 0
jne 0x45cffc
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx]
push eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
mov ecx, dword [ebx + 0x30]
cmp dword [ecx + 8], 0
jne 0x45d051
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401318
pop ecx
mov esi, eax
mov eax, dword [ebx + 0x30]
mov edx, dword [eax]
push edx
call fcn.00401318
pop ecx
add esi, eax
cmp esi, 0x3b5
jbe 0x45d03f
push 0xa
push 0
push 0x4f545f
push 0
call fcn.0045bf34
mov dword [ebp - 0x30], eax
jmp 0x461b4c
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx]
push eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
mov ebx, dword [ebx + 0x34]
xor ecx, ecx
mov dword [ebx + 0x18], ecx
mov eax, dword [ebp + 0x38]
mov edx, dword [eax]
cmp edx, dword [ebx + 0x30]
jne 0x45d068
mov ecx, dword [ebp + 0x38]
mov dword [ecx], ebx
cmp edi, dword [ebx + 0x30]
jne 0x45d06f
mov edi, ebx
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45d07a
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x30]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x38]
mov edx, dword [eax]
cmp edx, dword [ebx + 0x30]
jne 0x45d099
mov ecx, dword [ebp + 0x38]
mov dword [ecx], ebx
cmp edi, dword [ebx + 0x30]
jne 0x45d0a0
mov edi, ebx
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45d0ab
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x30]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
jmp 0x461a47
mov dword [ebx + 0x18], 2
jmp 0x461a79
cmp byte [esi + 1], 0
jne 0x45d160
mov eax, dword [ebp + 0x28]
cmp dword [eax], 0
je 0x461a47
mov edx, dword [ebp + 0x28]
mov ecx, dword [edx]
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, ecx
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
inc esi
cmp byte [esi], 0
je 0x461a47
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401318
pop ecx
push eax
push esi
call fcn.00401318
pop ecx
pop edx
add edx, eax
cmp edx, 0x3b5
jbe 0x45d14e
push 0xa
push 0
push 0x4f5463
push 0
call fcn.0045bf34
mov dword [ebp - 0x30], eax
jmp 0x461b4c
push esi
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0040123c
add esp, 8
jmp 0x461a47
inc esi
cmp dword [ebp - 0x14], 0
je 0x45d17e
push esi
push 0x4f5467
mov eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push esi
push 0x4f546d
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
mov ecx, dword [ebp + 0x10]
push esi
push edi
mov esi, 0x4f5472
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
pop edi
pop esi
push esi
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 1
jmp 0x461a47
mov eax, dword [ebp + 0x20]
push eax
mov edx, dword [ebp + 0x2c]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 0x1c]
push eax
mov dl, byte [ebp - 0x19]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push esi
mov edx, dword [ebp + 8]
push edx
call fcn.0047c264
mov esi, eax
test esi, esi
jne 0x45d1f8
xor ecx, ecx
mov dword [ebp - 0x30], ecx
jmp 0x461b4c
cmp esi, 2
je 0x461a79
mov eax, dword [ebp + 0x10]
cmp byte [eax], 0
je 0x461a47
mov edx, dword [ebp + 0x28]
cmp dword [edx], 0
je 0x45d221
mov ecx, dword [ebp + 0x28]
mov eax, dword [ecx]
push eax
call fcn.0040c454
pop ecx
mov edx, dword [ebp + 0x10]
push edx
call fcn.00401318
pop ecx
add eax, 0xa
push eax
call fcn.0040c55c
pop ecx
mov ecx, dword [ebp + 0x28]
mov dword [ecx], eax
mov eax, dword [ebp + 0x28]
cmp dword [eax], 0
je 0x461a47
mov edx, dword [ebp + 0x28]
mov ecx, dword [edx]
mov eax, dword [ebp + 0x10]
push edi
mov esi, ecx
mov edi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f5477
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d2c0
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0046f9f4
mov esi, eax
test esi, esi
jne 0x45d2b4
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f547f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d30a
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0046ff20
mov esi, eax
test esi, esi
jne 0x45d2fe
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5485
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d328
mov esi, 4
jmp 0x460f71
push 0x4f548c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d34a
mov eax, dword [ebp + 0x10]
push eax
push 0
call fcn.0046ffd0
jmp 0x461a47
push 0x4f5494
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d36c
push 1
mov edx, dword [ebp + 0x10]
push edx
call fcn.00472a8c
jmp 0x461a47
push 8
push 0x4f549b
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d3b6
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047012c
mov esi, eax
test esi, esi
jne 0x45d3aa
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f54a5
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d3e4
cmp dword [ebp + 0x2c], 0
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470200
jmp 0x461a47
push 7
push 0x4f54ae
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d42e
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00470264
mov esi, eax
test esi, esi
jne 0x45d422
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f54b7
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d4ea
cmp byte [esi + 5], 0x28
jne 0x45d484
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00411994
mov esi, eax
test esi, esi
jne 0x45d478
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f54be
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d4b7
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00411994
jmp 0x461a47
push 0x4f54c8
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d4ea
push 2
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00411994
jmp 0x461a47
push 6
push 0x4f54d3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d534
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00470480
mov esi, eax
test esi, esi
jne 0x45d528
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f54db
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d580
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x45d574
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0xa
push 0x4f54e1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d5ca
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004705d0
mov esi, eax
test esi, esi
jne 0x45d5be
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f54ed
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d612
cmp dword [0x4fd9f4], 0
je 0x45d5fb
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f54f8
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f54ff
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f5507
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d6d2
mov edx, dword [0x4fd9ec]
push edx
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x45d66d
cmp dword [0x4fd514], 0
je 0x45d656
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5511
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5517
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
mov edx, dword [0x4fd9ec]
push edx
call sub.USER32.dll_IsIconic
test eax, eax
je 0x45d694
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f551f
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [0x4fd9ec]
push edx
call sub.USER32.dll_IsZoomed
test eax, eax
je 0x45d6bb
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f552a
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5535
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f553d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d71c
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470670
mov esi, eax
test esi, esi
jne 0x45d710
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5543
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d768
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004706f4
mov esi, eax
test esi, esi
jne 0x45d75c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f554d
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d7b2
push 3
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004706f4
mov esi, eax
test esi, esi
jne 0x45d7a6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5556
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d7d0
mov esi, 2
jmp 0x460f71
push 5
push 0x4f555d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d7ee
mov esi, 6
jmp 0x460f71
push 0x4f5564
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d836
cmp dword [0x4f1c48], 0
je 0x45d81f
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f556a
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5571
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f5579
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
cmp dword [0x4f9164], 0
je 0x45d86b
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f557f
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5586
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 5
push 0x4f558e
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d8cc
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047098c
mov esi, eax
test esi, esi
jne 0x45d8c0
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5595
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d8f5
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f559b
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f55a3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d93f
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041ed5c
mov esi, eax
test esi, esi
jne 0x45d933
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f55ab
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45d967
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f55b1
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f55b5
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d9b3
push 5
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x45d9a7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f55be
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45d9ff
push 4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x45d9f3
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f55c6
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0041e9f0
mov esi, eax
test esi, esi
jne 0x45da41
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f55cd
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45da9b
mov edx, dword [ebp + 0x50]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00422080
mov esi, eax
test esi, esi
jne 0x45da8f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 3
push 0x4f55d4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dae7
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00471138
mov esi, eax
test esi, esi
jne 0x45dadb
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f55d9
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45db1a
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00471138
jmp 0x461a47
push 5
push 0x4f55dd
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x45db42
push 8
push 0x4f55e4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45db78
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004713d0
mov esi, eax
test esi, esi
jne 0x45db6c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f55ee
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45dba7
cmp dword [ebp + 0x2c], 0
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edx
push esi
mov ecx, dword [ebp + 8]
push ecx
call fcn.00471360
jmp 0x461a47
push 5
push 0x4f55f4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dbf3
push 0
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004719fc
mov esi, eax
test esi, esi
jne 0x45dbe7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f55fb
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dc3d
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00471fb0
mov esi, eax
test esi, esi
jne 0x45dc31
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5601
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dc87
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00472044
mov esi, eax
test esi, esi
jne 0x45dc7b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5609
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dcd1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004722f8
mov esi, eax
test esi, esi
jne 0x45dcc5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5612
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dd1b
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00472444
mov esi, eax
test esi, esi
jne 0x45dd0f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f561c
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dd39
mov esi, 3
jmp 0x460f71
push 6
push 0x4f5622
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45dd83
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00472798
mov esi, eax
test esi, esi
jne 0x45dd77
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f562a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ddcd
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00472910
mov esi, eax
test esi, esi
jne 0x45ddc1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5630
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45de39
cmp dword [0x4f4754], 1
jne 0x45ddfd
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5636
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
cmp dword [0x4f4754], 2
jne 0x45de1d
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f563c
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
xor edx, edx
mov dword [0x4f4754], edx
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5644
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
pop edi
jmp 0x461a47
push 0x4f5649
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45de60
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f564d
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
push 0x4f5650
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45de88
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5656
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f565a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ded2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004729e8
mov esi, eax
test esi, esi
jne 0x45dec6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5662
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45df03
push 0
call fcn.0040ef0c
pop ecx
push eax
push 0x4f5669
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0x4f566e
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
cmp dword [0x4f5364], 0
je 0x45df38
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5679
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5680
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 5
push 0x4f5688
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45df9b
push 2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004706f4
mov esi, eax
test esi, esi
jne 0x45df8f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f568f
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45dfbd
push 0
mov edx, dword [ebp + 0x10]
push edx
call fcn.00472a8c
jmp 0x461a47
push 0x4f5695
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e002
cmp dword [0x5017ec], 0
je 0x45dfed
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f569f
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f56a5
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
push 0x4f56a8
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e022
mov edx, dword [ebp + 0x10]
push edx
call fcn.00472b68
jmp 0x461a47
push 0x4f56ad
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e063
call sub.USER32.dll_GetDialogBaseUnits
movzx ecx, ax
test ecx, ecx
jns 0x45e043
add ecx, 3
sar ecx, 2
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp - 0x34]
push eax
push 0x4f56b3
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0x4f56b8
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e0ab
call sub.USER32.dll_GetDialogBaseUnits
shr eax, 0x10
and ax, 0xffff
movzx ecx, ax
test ecx, ecx
jns 0x45e08b
add ecx, 7
sar ecx, 3
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
push eax
push 0x4f56be
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0xa
push 0x4f56c3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e0f5
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00472bcc
mov esi, eax
test esi, esi
jne 0x45e0e9
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f56cf
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e13d
cmp dword [0x4f4990], 0
je 0x45e126
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f56da
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f56e1
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f56e9
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e16d
movzx edx, word [0x4fa8d4]
push edx
push 0x4f56f2
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0x4f56f6
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e18e
mov eax, dword [ebp + 0x10]
push eax
push esi
call fcn.00472d1c
jmp 0x461a47
push 0x4f56ff
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e335
cmp dword [ebx + 0x30], 0
je 0x45e1bf
mov edx, dword [ebx + 0x30]
cmp dword [edx + 0x30], 0
je 0x45e1bf
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x30], 0
jne 0x45e1d8
push 0x50cbd8
push 0x8ff
call fcn.0041f178
xor edx, edx
mov dword [ebp - 0x30], edx
jmp 0x461b4c
mov ecx, dword [ebx + 0x30]
cmp dword [ecx + 0x18], 1
jne 0x461a79
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0x30]
cmp dword [edx + 0x18], 1
jne 0x461a79
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx + 0x30]
mov edx, dword [eax + 0x30]
cmp dword [edx + 0x18], 1
jne 0x461a79
push 2
push 0x4f5704
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx]
push eax
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e28c
mov edx, dword [ebx + 0x30]
mov ecx, dword [edx]
cmp byte [ecx + 2], 0
je 0x45e240
mov eax, dword [ebx + 0x30]
mov edx, dword [eax]
add edx, 2
push edx
call fcn.00409a14
pop ecx
mov dword [0x4f5434], eax
cmp dword [0x4f5434], 0x3e8
jge 0x45e256
mov dword [0x4f5434], 0x3e8
mov ecx, dword [ebp + 0x38]
mov eax, dword [ecx]
cmp eax, dword [ebx + 0x30]
jne 0x45e265
mov edx, dword [ebp + 0x38]
mov dword [edx], ebx
cmp edi, dword [ebx + 0x30]
jne 0x45e26c
mov edi, ebx
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45e277
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x30]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
jmp 0x461a79
mov eax, dword [ebp + 0x18]
mov byte [eax], 0
mov dword [0x4fe2c4], 1
mov edx, dword [0x4f5434]
push edx
push 3
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx]
push eax
mov edx, dword [ebx + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx]
push eax
mov edx, dword [ebx + 0x30]
mov ecx, dword [edx]
push ecx
call fcn.0045133c
xor eax, eax
mov dword [0x4fe2c4], eax
mov dword [0x4f5434], 0x3e8
mov edx, dword [ebp + 0x18]
cmp byte [edx], 0
je 0x45e2f2
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x10]
push eax
call fcn.0040123c
add esp, 8
xor esi, esi
mov eax, dword [ebp + 0x38]
mov edx, dword [eax]
cmp edx, dword [ebx + 0x30]
jne 0x45e303
mov ecx, dword [ebp + 0x38]
mov dword [ecx], ebx
cmp edi, dword [ebx + 0x30]
jne 0x45e30a
mov edi, ebx
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45e315
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x30]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
inc esi
cmp esi, 3
jl 0x45e2f4
jmp 0x461a47
push 7
push 0x4f5708
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e37f
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00472d68
mov esi, eax
test esi, esi
jne 0x45e373
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5711
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e3d1
mov edx, dword [ebp + 0x50]
push edx
mov ecx, dword [ebp + 0x2c]
push ecx
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0044c6c0
mov esi, eax
test esi, esi
jne 0x45e3c5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f571a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e421
push 0
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0044d0ac
mov esi, eax
test esi, esi
jne 0x45e415
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5720
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e471
push 1
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0044d0ac
mov esi, eax
test esi, esi
jne 0x45e465
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5728
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e4c1
push 2
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0044d0ac
mov esi, eax
test esi, esi
jne 0x45e4b5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5731
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x45e792
push 4
push 0x4f5736
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x45e792
push 5
push 0x4f573c
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e539
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00473088
mov esi, eax
test esi, esi
jne 0x45e52d
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5743
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e568
mov edx, dword [0x4fb7fc]
push edx
push 0x4f574b
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 4
push 0x4f574f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e5c6
mov eax, dword [ebp + 0x50]
push eax
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x48]
push ecx
mov eax, dword [ebp + 0x44]
push eax
mov edx, dword [ebp + 0x2c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00454904
mov esi, eax
test esi, esi
jne 0x45e5ba
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 9
push 0x4f5755
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00473438
mov esi, eax
test esi, esi
jne 0x45e608
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5760
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e65e
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004738e8
mov esi, eax
test esi, esi
jne 0x45e652
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f576a
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e69e
mov edx, dword [ebp + 0x10]
push edi
mov esi, edx
mov edi, 0x4fac9c
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f5771
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
push 2
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00478078
mov esi, eax
test esi, esi
jne 0x45e6e2
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f577a
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45e717
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5781
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 5
push 0x4f5789
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45e763
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00473a64
mov esi, eax
test esi, esi
jne 0x45e757
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5790
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x45e78d
push 5
push 0x4f5796
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ea58
xor edx, edx
mov dword [ebp - 0x3c], edx
cmp dword [ebp + 0x2c], 0
je 0x45e7a2
xor ecx, ecx
mov dword [ebp - 0x30], ecx
jmp 0x461b4c
xor eax, eax
mov al, byte [esi]
push eax
call fcn.00408bd0
pop ecx
mov dword [ebp - 0x40], eax
cmp dword [ebx + 0x30], 0
jne 0x45e847
mov byte [0x50cbd8], 0
cmp dword [ebp - 0x40], 0x66
jne 0x45e7d7
mov esi, 0x4f579d
mov edi, 0x50cbd8
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x45e81a
cmp dword [ebp - 0x40], 0x68
jne 0x45e7ee
mov esi, 0x4f57a6
mov edi, 0x50cbd8
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x45e81a
cmp dword [ebp - 0x40], 0x64
jne 0x45e806
mov esi, 0x4f57b0
mov edi, 0x50cbd8
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x45e81a
cmp dword [ebp - 0x40], 0x73
jne 0x45e81a
mov esi, 0x4f57b8
mov edi, 0x50cbd8
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp byte [0x50cbd8], 0
je 0x45e83d
push 0
push 0x900
call fcn.0041f178
push eax
push 0x50cbd8
call fcn.0040123c
add esp, 8
xor edx, edx
mov dword [ebp - 0x30], edx
jmp 0x461b4c
mov ecx, dword [ebx + 0x30]
cmp dword [ecx + 0x18], 1
jne 0x461a79
cmp dword [ebp - 0x40], 0x66
jne 0x45e863
mov dword [ebp - 0x3c], 4
jmp 0x45e88c
cmp dword [ebp - 0x40], 0x68
jne 0x45e872
mov dword [ebp - 0x3c], 5
jmp 0x45e88c
cmp dword [ebp - 0x40], 0x64
jne 0x45e881
mov dword [ebp - 0x3c], 1
jmp 0x45e88c
cmp dword [ebp - 0x40], 0x73
jne 0x45e88c
xor eax, eax
mov dword [ebp - 0x3c], eax
add dword [ebp - 0x3c], 0xa
push ebx
call fcn.004b7c64
mov esi, eax
test esi, esi
je 0x45e8a6
cmp dword [esi + 0x18], 1
jne 0x461a79
push 1
mov eax, dword [ebp + 0x14]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
call fcn.004b7ce0
mov esi, eax
test esi, esi
jne 0x45e8c6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
cmp esi, 2
je 0x461a79
mov edx, dword [ebp + 0x14]
cmp byte [edx], 0
jne 0x45e901
cmp dword [ebp - 0x3c], 0
je 0x45e8e3
cmp dword [ebp - 0x3c], 0xa
jne 0x45e8f3
mov ecx, dword [ebp + 0x14]
push ecx
push 0x901
call fcn.0041f178
jmp 0x45e901
mov eax, dword [ebp + 0x14]
push eax
push 0x902
call fcn.0041f178
push edi
mov esi, 0x51f91f
mov edi, 0x4f7cec
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
push 0x4f57c1
push 0x51f91f
call fcn.0040123c
add esp, 8
mov eax, dword [ebp + 0x10]
mov byte [eax], 0
cmp dword [ebx + 0x30], 0
je 0x45e9e7
mov edx, dword [ebx + 0x30]
cmp dword [edx + 8], 0
jne 0x461a47
push 0
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebx + 0x30]
push eax
lea edx, [ebp - 0x10]
push edx
call fcn.004b7ce0
mov esi, eax
test esi, esi
jne 0x45e97c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
cmp esi, 2
je 0x461a79
mov edx, dword [ebp + 0x18]
cmp byte [edx], 0
je 0x45e9b6
mov ecx, dword [ebp + 0x18]
push edi
mov esi, 0x51f91f
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov eax, dword [ebp + 0x38]
mov edx, dword [eax]
cmp edx, dword [ebx + 0x30]
jne 0x45e9c5
mov ecx, dword [ebp + 0x38]
mov dword [ecx], ebx
cmp edi, dword [ebx + 0x30]
jne 0x45e9cc
mov edi, ebx
mov eax, dword [ebx + 0x30]
cmp eax, dword [ebp - 0xc]
jne 0x45e9d7
mov dword [ebp - 0xc], ebx
mov edx, dword [ebx + 0x30]
push edx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.00498fb0
mov dword [ebp - 0x10], eax
push 0x1e
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp - 0x3c]
push edx
mov ecx, dword [0x4fd9f8]
push ecx
call fcn.004d20cc
test eax, eax
je 0x461a47
cmp dword [ebp - 0x3c], 0xa
jl 0x45ea0f
sub dword [ebp - 0x3c], 0xa
mov eax, dword [ebp + 0x10]
push edi
mov esi, eax
mov edi, 0x51f91f
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
cmp dword [ebp - 0x3c], 0
jle 0x461a47
push 0x51fa9f
mov eax, dword [ebp + 0x10]
push eax
call fcn.0040123c
add esp, 8
jmp 0x461a47
push 0x4f57c6
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45ea87
mov edx, dword [0x4f2d64]
push edx
push 0x4f57d0
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 8
push 0x4f57d4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ead3
push 1
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004740a4
mov esi, eax
test esi, esi
jne 0x45eac7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 9
push 0x4f57de
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45eb1f
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004740a4
mov esi, eax
test esi, esi
jne 0x45eb13
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f57e9
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45eb69
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00474614
mov esi, eax
test esi, esi
jne 0x45eb5d
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f57f3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ebb3
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004748e4
mov esi, eax
test esi, esi
jne 0x45eba7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f57fb
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ebff
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004719fc
mov esi, eax
test esi, esi
jne 0x45ebf3
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5803
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
push 2
mov edx, dword [ebp + 0x10]
push edx
call fcn.00472a8c
jmp 0x461a47
push 4
push 0x4f580d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ec6f
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00474ebc
mov esi, eax
test esi, esi
jne 0x45ec63
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5813
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ecb9
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00475480
mov esi, eax
test esi, esi
jne 0x45ecad
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f581c
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ecfe
push 0
push 0
mov edx, dword [ebp + 0x10]
push edx
push 0x4f5824
call fcn.004626c4
cmp byte [esi + 6], 0
je 0x461a47
add esi, 6
push esi
mov eax, dword [ebp + 0x10]
push eax
call fcn.0040123c
add esp, 8
jmp 0x461a47
push 7
push 0x4f5828
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ed48
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00475504
mov esi, eax
test esi, esi
jne 0x45ed3c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5831
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ed92
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004756f8
mov esi, eax
test esi, esi
jne 0x45ed86
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f583a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45edde
push 4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004706f4
mov esi, eax
test esi, esi
jne 0x45edd2
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5840
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45ee15
push 0
call fcn.0040ef0c
pop ecx
add eax, dword [0x5017e8]
push eax
push 0x4f5845
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 6
push 0x4f584a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00475a6c
mov esi, eax
test esi, esi
jne 0x45ee57
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5852
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45eead
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00475e10
mov esi, eax
test esi, esi
jne 0x45eea1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5859
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45eef7
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00475ef0
mov esi, eax
test esi, esi
jne 0x45eeeb
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5862
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x45e792
push 6
push 0x4f5869
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x45e792
push 0xa
push 0x4f5871
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ef6f
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00476044
mov esi, eax
test esi, esi
jne 0x45ef63
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f587d
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45efb7
cmp dword [0x4f6acc], 0
je 0x45efa0
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5888
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f588f
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f5897
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f003
push 5
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x45eff7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f589f
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edi
mov esi, edx
mov edi, 0x4faf5c
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 3
push 0x4f58a5
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f128
cmp byte [esi + 3], 0
jne 0x45f09b
cmp dword [0x4fb800], 0
je 0x45f084
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f58aa
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f58b1
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
cmp byte [esi + 3], 0x28
jne 0x45f0d7
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00476860
mov esi, eax
test esi, esi
jne 0x45f0cb
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f58b9
add esi, 3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00476908
mov esi, eax
test esi, esi
jne 0x45f11c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f58c0
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f157
mov edx, dword [0x4f535c]
push edx
push 0x4f58c6
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 4
push 0x4f58cb
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f1b9
mov eax, dword [ebp + 0x50]
push eax
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x2c]
push ecx
mov eax, dword [ebp + 0x20]
push eax
mov edx, dword [ebp + 0x1c]
push edx
mov ecx, dword [ebp + 0x44]
push ecx
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004769e4
mov esi, eax
test esi, esi
jne 0x45f1ad
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f58d1
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f209
cmp dword [0x4f8ad8], 0
je 0x461a47
mov edx, dword [ebp + 0x10]
mov ecx, dword [0x4f8ad8]
push edi
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f58da
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f251
cmp dword [0x4f7ca0], 0
je 0x45f23a
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f58e2
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f58e9
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f58f1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f29b
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00476d8c
mov esi, eax
test esi, esi
jne 0x45f28f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f58fa
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x45f2c3
push 9
push 0x4f5900
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f2f9
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00476fb4
mov esi, eax
test esi, esi
jne 0x45f2ed
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f590b
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f346
push 0x4f5913
call sub.WINMM.dll_mciGetDeviceIDA
test eax, eax
je 0x45f32f
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f591c
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5923
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f592b
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f392
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477618
mov esi, eax
test esi, esi
jne 0x45f386
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5934
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f3de
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477618
mov esi, eax
test esi, esi
jne 0x45f3d2
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f593d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f428
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477904
mov esi, eax
test esi, esi
jne 0x45f41c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5946
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f472
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477cac
mov esi, eax
test esi, esi
jne 0x45f466
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f594c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f4bf
push 0x4f5954
call sub.WINMM.dll_mciGetDeviceIDA
test eax, eax
je 0x45f4a8
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f595d
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5964
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f596c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f4e4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push esi
call fcn.00477d64
jmp 0x461a47
push 6
push 0x4f5970
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f530
push 6
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x45f524
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5978
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f57a
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477db4
mov esi, eax
test esi, esi
jne 0x45f56e
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5982
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f5c4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00477fdc
mov esi, eax
test esi, esi
jne 0x45f5b8
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f598a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f610
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478078
mov esi, eax
test esi, esi
jne 0x45f604
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5992
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f65c
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478078
mov esi, eax
test esi, esi
jne 0x45f650
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f599b
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f6a1
cmp dword [ebp + 0x48], 0
je 0x45f68a
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f59a1
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f59a8
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 8
push 0x4f59b0
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f6ed
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047825c
mov esi, eax
test esi, esi
jne 0x45f6e1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f59ba
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f767
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00474614
mov esi, eax
test esi, esi
jne 0x45f72b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
mov edx, dword [ebp + 0x10]
cmp byte [edx], 0
je 0x45f750
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f59c2
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f59c9
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 8
push 0x4f59d1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047825c
mov esi, eax
test esi, esi
jne 0x45f7ab
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f59db
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f7db
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0046ffd0
jmp 0x461a47
push 5
push 0x4f59e4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f825
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047836c
mov esi, eax
test esi, esi
jne 0x45f819
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f59eb
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f86f
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478500
mov esi, eax
test esi, esi
jne 0x45f863
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f59f1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f8bd
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00478598
mov esi, eax
test esi, esi
jne 0x45f8b1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f59f9
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45f8e4
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f59fd
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
push 5
push 0x4f5a00
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f92e
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478680
mov esi, eax
test esi, esi
jne 0x45f922
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5a07
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f978
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478a00
mov esi, eax
test esi, esi
jne 0x45f96c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5a0f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45f9c2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478af0
mov esi, eax
test esi, esi
jne 0x45f9b6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5a16
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fa0c
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00478d50
mov esi, eax
test esi, esi
jne 0x45fa00
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5a1d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fa58
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00473a64
mov esi, eax
test esi, esi
jne 0x45fa4c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5a23
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fa76
mov esi, 7
jmp 0x460f71
push 6
push 0x4f5a29
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fa99
mov eax, dword [ebp + 0x10]
push eax
push esi
call fcn.004790f0
jmp 0x461a47
push 7
push 0x4f5a31
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fae3
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047913c
mov esi, eax
test esi, esi
jne 0x45fad7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5a3a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fb2d
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004792a0
mov esi, eax
test esi, esi
jne 0x45fb21
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5a43
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fb77
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004793fc
mov esi, eax
test esi, esi
jne 0x45fb6b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5a4b
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
push 0
mov edx, dword [ebp + 0x10]
push edx
call fcn.004ddb78
jmp 0x461a47
push 9
push 0x4f5a53
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fbeb
mov ecx, dword [ebp + 0x4c]
push ecx
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047fb18
mov esi, eax
test esi, esi
jne 0x45fbdf
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 9
push 0x4f5a5e
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fc37
push 0
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00479588
mov esi, eax
test esi, esi
jne 0x45fc2b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5a69
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fc81
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00479498
mov esi, eax
test esi, esi
jne 0x45fc75
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5a70
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45fcc1
mov edx, dword [ebp + 0x10]
push edi
mov esi, edx
mov edi, 0x4fa23c
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f5a76
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45fd12
mov eax, dword [0x4fac34]
shl eax, 2
lea eax, [eax + eax*4]
lea eax, [eax + eax*4]
add eax, 0x4fab6c
mov edx, dword [ebp + 0x10]
push edi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f5a7a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fd5c
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00479a6c
mov esi, eax
test esi, esi
jne 0x45fd50
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5a80
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fd7f
mov edx, dword [ebp + 0x10]
push edx
push esi
call fcn.00479c94
jmp 0x461a47
push 7
push 0x4f5a89
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fda2
mov ecx, dword [ebp + 0x10]
push ecx
push esi
call fcn.00479ce0
jmp 0x461a47
push 7
push 0x4f5a92
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fdc5
mov eax, dword [ebp + 0x10]
push eax
push esi
call fcn.00479d2c
jmp 0x461a47
push 7
push 0x4f5a9b
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fde8
mov edx, dword [ebp + 0x10]
push edx
push esi
call fcn.00479d68
jmp 0x461a47
push 8
push 0x4f5aa4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fe34
push 0
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00474d50
mov esi, eax
test esi, esi
jne 0x45fe28
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 9
push 0x4f5aae
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fe80
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00474d50
mov esi, eax
test esi, esi
jne 0x45fe74
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5ab9
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45fecc
push 2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00474d50
mov esi, eax
test esi, esi
jne 0x45fec0
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5ac0
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ff16
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00479db4
mov esi, eax
test esi, esi
jne 0x45ff0a
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5ac7
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edx
push esi
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a074
jmp 0x461a47
push 0x4f5acf
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x45ff81
mov eax, dword [ebp + 0x10]
push edi
mov esi, eax
mov edi, 0x4fadc8
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 5
push 0x4f5ad8
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x45ffcd
push 0
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x45ffc1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5adf
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46003b
cmp dword [ebp + 0x2c], 0
jne case.0x45cdbf.33
mov edx, dword [ebp + 8]
push edx
call fcn.00427074
mov dword [0x50cfcc], eax
cmp dword [0x50cfcc], 0
je 0x461a47
mov ecx, dword [0x50cfcc]
add ecx, 0x3f0
mov eax, dword [ebp + 0x10]
push edi
mov edi, ecx
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f5ae5
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460085
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047ab8c
mov esi, eax
test esi, esi
jne 0x460079
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5aee
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4600d1
push 3
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x4600c5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5af4
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x46011b
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047acec
mov esi, eax
test esi, esi
jne 0x46010f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5afd
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460167
push 6
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x46015b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5b06
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4601b1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047ac3c
mov esi, eax
test esi, esi
jne 0x4601a5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5b0f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4601fd
push 2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x4601f1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5b19
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460247
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047b10c
mov esi, eax
test esi, esi
jne 0x46023b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b22
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46026f
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5b28
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f5b2f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4602b9
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047b3ec
mov esi, eax
test esi, esi
jne 0x4602ad
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5b38
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
push 4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x4602fd
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b41
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460361
mov edx, dword [0x4f4f18]
shl edx, 2
lea edx, [edx + edx*2]
lea edx, [edx + edx*4]
add edx, dword [0x4f4f1c]
mov ecx, dword [0x4f4f14]
shl ecx, 4
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*4]
lea ecx, [ecx + ecx*8]
add edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x44]
push eax
push 0x4f5b49
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 7
push 0x4f5b4e
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4603ad
push 1
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x4603a1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 3
push 0x4f5b57
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4603f9
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x4603ed
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5b5c
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460443
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047b518
mov esi, eax
test esi, esi
jne 0x460437
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b62
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edx
call fcn.00420138
jmp 0x461a47
push 4
push 0x4f5b66
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4604b1
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047ba54
mov esi, eax
test esi, esi
jne 0x4604a5
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b6c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460524
cmp dword [0x4fb6f0], 0
je 0x461a47
mov edx, dword [0x4fb6f0]
add edx, 0xc
test edx, edx
je 0x461a47
mov ecx, dword [0x4fb6f0]
cmp byte [ecx + 0xc], 0
je 0x461a47
mov eax, dword [0x4fb6f0]
add eax, 0xc
mov edx, dword [ebp + 0x10]
push edi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f5b73
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x46056e
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047b770
mov esi, eax
test esi, esi
jne 0x460562
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b79
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46059e
movzx edx, word [0x4faf58]
push edx
push 0x4f5b7f
mov ecx, dword [ebp + 0x10]
push ecx
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 9
push 0x4f5b83
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4605e8
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047b6cc
mov esi, eax
test esi, esi
jne 0x4605dc
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5b8e
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460632
cmp dword [ebp + 0x58], 0
je 0x461a47
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x58]
push edi
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f5b94
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46067a
cmp dword [0x4fb7b4], 0
je 0x460663
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f5b9d
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5ba4
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 7
push 0x4f5bac
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047bc84
mov esi, eax
test esi, esi
jne 0x4606bc
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5bb5
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047bfb4
mov esi, eax
test esi, esi
jne 0x46070a
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 2
push 0x4f5bbd
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x46073e
push 5
push 0x4f5bc1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460774
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047c520
mov esi, eax
test esi, esi
jne 0x460768
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5bc8
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x4608ed
cmp dword [ebx + 0x30], 0
je 0x4608d4
mov edx, dword [ebx + 0x30]
cmp dword [edx + 0x30], 0
je 0x4608d4
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x30], 0
je 0x4608d4
mov edx, dword [ebx + 0x30]
cmp dword [edx + 0x18], 1
jne 0x461a79
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x18], 1
jne 0x461a79
mov edx, dword [ebx + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x18], 1
jne 0x461a79
mov edx, dword [ebx + 0x30]
mov ecx, dword [edx]
cmp byte [ecx], 0x2d
jne 0x460814
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + 0x30]
cmp dword [ecx + 0x30], 0
je 0x4608d4
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0x30]
mov ecx, dword [edx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x18], 1
jne 0x461a79
mov edx, dword [ebp + 0x54]
push edx
lea ecx, [ebp - 0x24]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x18]
push edx
lea ecx, [ebp - 8]
push ecx
lea eax, [ebp - 4]
push eax
push ebx
mov edx, dword [ebp - 0x10]
push edx
call fcn.004c2714
mov esi, eax
test esi, esi
je 0x4608ca
mov dword [ebp - 0x10], esi
mov eax, dword [ebp + 0x18]
cmp byte [eax], 0
jne 0x460856
mov edx, dword [ebp + 0x10]
mov byte [edx], 0
jmp 0x461a47
mov esi, dword [ebx + 0x30]
mov eax, dword [ebp + 0x38]
cmp ebx, dword [eax]
jne 0x460865
mov edx, dword [ebp + 0x38]
mov dword [edx], esi
cmp ebx, edi
jne 0x46086b
mov edi, esi
cmp ebx, dword [ebp - 0xc]
jne 0x460873
mov dword [ebp - 0xc], esi
push ebx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov ebx, esi
test ebx, ebx
je case.0x45cdbf.33
cmp dword [ebp - 0x24], 0
jne 0x4608be
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0x18]
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
mov dword [ebp - 0x30], 0xffffffff
jmp 0x461b4c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
push 0x50cbd8
push 0x903
call fcn.0041f178
xor edx, edx
mov dword [ebp - 0x30], edx
jmp 0x461b4c
push 0x4f5bd1
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460929
cmp dword [0x4fb894], 0
jle 0x461a47
mov ecx, dword [0x4fb894]
push ecx
push 0x4f5bd8
mov eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0x4f5bdd
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460a2c
cmp dword [ebx + 0x30], 0
je 0x460a13
mov edx, dword [ebx + 0x30]
cmp dword [edx + 0x18], 1
jne 0x461a79
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx]
cmp byte [eax], 0x2d
jne 0x46097d
mov edx, dword [ebx + 0x30]
cmp dword [edx + 0x30], 0
je 0x460a13
mov ecx, dword [ebx + 0x30]
mov eax, dword [ecx + 0x30]
cmp dword [eax + 0x18], 1
jne 0x461a79
mov edx, dword [ebp + 0x54]
push edx
lea ecx, [ebp - 0x24]
push ecx
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
lea eax, [ebp - 8]
push eax
lea edx, [ebp - 4]
push edx
push ebx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004c141c
mov esi, eax
test esi, esi
je 0x460a09
mov dword [ebp - 0x10], esi
mov eax, dword [ebp + 0x14]
cmp byte [eax], 0
jne 0x4609bf
mov edx, dword [ebp + 0x10]
mov byte [edx], 0
jmp 0x461a47
mov esi, dword [ebx + 0x30]
mov eax, dword [ebp + 0x38]
cmp ebx, dword [eax]
jne 0x4609ce
mov edx, dword [ebp + 0x38]
mov dword [edx], esi
cmp ebx, edi
jne 0x4609d4
mov edi, esi
cmp ebx, dword [ebp - 0xc]
jne 0x4609dc
mov dword [ebp - 0xc], esi
push ebx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov ebx, esi
test ebx, ebx
je case.0x45cdbf.33
cmp dword [ebp - 0x24], 0
je 0x461a47
mov dword [ebp - 0x30], 0xffffffff
jmp 0x461b4c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
push 0x50cbd8
push 0x904
call fcn.0041f178
xor edx, edx
mov dword [ebp - 0x30], edx
jmp 0x461b4c
push 7
push 0x4f5be3
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x460a54
push 9
push 0x4f5bec
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460a8a
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047ca18
mov esi, eax
test esi, esi
jne 0x460a7e
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5bf7
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460ad4
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047c760
mov esi, eax
test esi, esi
jne 0x460ac8
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5c00
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x460afc
push 0xa
push 0x4f5c0a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460b32
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047ccb0
mov esi, eax
test esi, esi
jne 0x460b26
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5c16
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460b7c
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047d064
mov esi, eax
test esi, esi
jne 0x460b70
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5c1f
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460bc6
cmp dword [ebp + 0x40], 0
je 0x461a47
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x40]
push edi
mov esi, edx
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f5c27
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460c10
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047d3fc
mov esi, eax
test esi, esi
jne 0x460c04
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5c2d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460c5a
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047d6e4
mov esi, eax
test esi, esi
jne 0x460c4e
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5c35
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460ca6
push 7
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x460c9a
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5c3d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047d86c
mov esi, eax
test esi, esi
jne 0x460ce8
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5c45
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460d3e
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047e84c
mov esi, eax
test esi, esi
jne 0x460d32
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5c4f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460d88
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004d63c0
mov esi, eax
test esi, esi
jne 0x460d7c
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5c56
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460dd2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047d9d4
mov esi, eax
test esi, esi
jne 0x460dc6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5c5f
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460e04
mov edx, dword [ebp + 0x10]
push edx
push esi
call fcn.0047db38
mov esi, eax
test esi, esi
jne 0x461a47
xor ecx, ecx
mov dword [ebp - 0x30], ecx
jmp 0x461b4c
push 0x4f5c67
push esi
call fcn.004014a8
add esp, 8
test eax, eax
je 0x45e792
push 5
push 0x4f5c6d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
je 0x45e792
push 5
push 0x4f5c74
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460e7c
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047dc7c
mov esi, eax
test esi, esi
jne 0x460e70
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5c7b
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460ec6
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047e2f0
mov esi, eax
test esi, esi
jne 0x460eba
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5c84
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460f13
cmp dword [0x4f39b4], 0
je 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, edx
mov edi, 0x4faef4
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 0x4f5c8c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x460f58
cmp dword [ebp + 0x44], 0
je 0x460f41
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f5c92
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5c99
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f5ca1
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460fa8
mov esi, 1
push esi
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00479810
mov esi, eax
test esi, esi
jne 0x460f9c
xor ecx, ecx
mov dword [ebp - 0x30], ecx
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5ca7
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x460ff2
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047e988
mov esi, eax
test esi, esi
jne 0x460fe6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5caf
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x46103c
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047ebd4
mov esi, eax
test esi, esi
jne 0x461030
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5cb7
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461075
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047eec4
mov esi, eax
test esi, esi
jne 0x461a47
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
push 0x4f5cbf
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461099
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0047f0e0
jmp 0x461a47
push 8
push 0x4f5cc8
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4610e3
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047f16c
mov esi, eax
test esi, esi
jne 0x4610d7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 5
push 0x4f5cd2
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461101
mov esi, 8
jmp 0x460f71
push 0x4f5cd9
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46116d
cmp dword [0x4f474c], 1
jne 0x461131
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f5cdf
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
cmp dword [0x4f474c], 2
jne 0x461151
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5ce5
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
xor edx, edx
mov dword [0x4f474c], edx
mov ecx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5ced
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
pop edi
jmp 0x461a47
push 4
push 0x4f5cf2
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4611b7
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047f428
mov esi, eax
test esi, esi
jne 0x4611ab
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5cf8
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.0047f54c
mov esi, eax
test esi, esi
jne 0x4611f9
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5d00
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461223
mov esi, 5
jmp 0x460f71
push 0x4f5d06
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461251
call sub.KERNEL32.dll_GetTickCount
push eax
push 0x4f5d0d
mov eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 0x4f5d12
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461271
mov edx, dword [ebp + 0x10]
push edx
call fcn.0041f3cc
jmp 0x461a47
push 6
push 0x4f5d1d
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4612bb
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047f7c4
mov esi, eax
test esi, esi
jne 0x4612af
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5d25
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x4612f0
mov edx, dword [0x5017e8]
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x48]
push ecx
push 0x4f5d2f
mov eax, dword [ebp + 0x10]
push eax
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x461a47
push 5
push 0x4f5d34
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x46133c
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004706f4
mov esi, eax
test esi, esi
jne 0x461330
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5d3b
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461389
push 0x50cfd0
call fcn.0040ed80
pop ecx
xor edx, edx
mov dl, byte [0x50cfd3]
push edx
xor ecx, ecx
mov cl, byte [0x50cfd0]
push ecx
xor eax, eax
mov al, byte [0x50cfd1]
push eax
push 0x4f5d41
mov edx, dword [ebp + 0x10]
push edx
call sub.USER32.dll_wsprintfA
add esp, 0x14
jmp 0x461a47
push 0x4f5d52
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x4613c9
mov ecx, dword [ebp + 0x10]
push edi
mov esi, ecx
mov edi, 0x518038
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f5d5c
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461413
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.004756f8
mov esi, eax
test esi, esi
jne 0x461407
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5d64
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x10]
push edi
mov esi, 0x4f5d6a
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
pop edi
jmp 0x461a47
push 6
push 0x4f5d71
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x46148d
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.0047fb18
mov esi, eax
test esi, esi
jne 0x461481
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 6
push 0x4f5d79
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4614d7
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00480008
mov esi, eax
test esi, esi
jne 0x4614cb
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5d81
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461521
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004800a4
mov esi, eax
test esi, esi
jne 0x461515
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5d87
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461545
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.00480348
jmp 0x461a47
push 0x4f5d8c
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne case.0x45cdbf.33
cmp byte [0x4f91d0], 0
je 0x461a47
mov eax, dword [ebp + 0x10]
push edi
mov esi, eax
mov edi, 0x4f91d1
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
push 0x5d
mov eax, dword [ebp + 0x10]
push eax
call fcn.00401278
add esp, 8
mov esi, eax
test esi, esi
je 0x461a47
mov byte [esi], 0
jmp 0x461a47
push 2
push 0x4f5d96
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4616a9
push 6
push 0x4f5d9a
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461615
push 0
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.00413980
mov esi, eax
test esi, esi
jne 0x461609
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5da1
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x46165f
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00413980
mov esi, eax
test esi, esi
jne 0x461653
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5daa
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x4616a9
push 2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00413980
mov esi, eax
test esi, esi
jne 0x46169d
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 0x4f5db4
push esi
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461720
mov esi, 0x4fa690
cmp byte [esi], 0x76
jne 0x4616f3
inc esi
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x461a47
mov eax, dword [ebp + 0x10]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x461a47
push 6
push 0x4f5dbd
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
push 3
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
push ebx
lea eax, [ebp - 0x10]
push eax
mov edx, dword [ebp + 8]
push edx
call fcn.0047a578
mov esi, eax
test esi, esi
jne 0x461764
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5dc5
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461793
mov edx, dword [ebp + 0x10]
push edx
push esi
call fcn.004803f4
jmp 0x461a47
push 6
push 0x4f5dce
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x4617dd
mov ecx, dword [ebp + 0x18]
push ecx
mov eax, dword [ebp + 0x14]
push eax
mov edx, dword [ebp + 0x10]
push edx
push ebx
lea ecx, [ebp - 0x10]
push ecx
mov eax, dword [ebp + 8]
push eax
call fcn.00480440
mov esi, eax
test esi, esi
jne 0x4617d1
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 8
push 0x4f5dd6
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne 0x461829
push 1
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00479588
mov esi, eax
test esi, esi
jne 0x46181d
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 7
push 0x4f5de0
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.004805c4
mov esi, eax
test esi, esi
jne 0x46186b
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
push 4
push 0x4f5de9
push esi
call fcn.00401540
add esp, 0xc
test eax, eax
jne case.0x45cdbf.33
push 2
mov edx, dword [ebp + 0x18]
push edx
mov ecx, dword [ebp + 0x14]
push ecx
mov eax, dword [ebp + 0x10]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00470d54
mov esi, eax
test esi, esi
jne 0x4618b7
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
cmp dword [ebp + 0x2c], 0
je 0x4618e2
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebx]
push eax
call fcn.004c331c
cmp eax, 2
jl 0x461a47
mov edx, dword [ebp + 0x4c]
push edx
mov ecx, dword [ebp + 0x2c]
push ecx
mov eax, dword [ebp + 0x18]
push eax
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp + 0x10]
push ecx
mov eax, dword [ebp + 0x3c]
push eax
push ebx
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp + 8]
push ecx
call fcn.00473bf8
mov esi, eax
test esi, esi
jne 0x461918
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
dec esi
je 0x461a79
jmp 0x461a47
mov edx, dword [ebx]
cmp byte [edx], 0x25
jne 0x46195b
mov ecx, 1
cmp dword [ebp - 0x28], 0
je 0x46193c
cmp dword [ebp - 0x20], 0
jne 0x46193d
dec ecx
push ecx
mov eax, dword [ebp + 0x50]
push eax
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebp + 0x38]
mov eax, dword [ecx]
push eax
push ebx
mov edx, dword [ebp - 0x10]
push edx
call fcn.004e7a4c
jmp 0x461a47
mov ecx, dword [ebx]
cmp byte [ecx], 0x7b
je 0x461969
mov eax, dword [ebx]
cmp byte [eax], 0x7d
jne 0x4619a2
mov edx, dword [ebx]
cmp byte [edx + 1], 0
jne 0x4619a2
mov esi, dword [ebx + 0x30]
mov eax, dword [ebp + 0x38]
cmp ebx, dword [eax]
jne 0x461980
mov edx, dword [ebp + 0x38]
mov dword [edx], esi
cmp ebx, edi
jne 0x461986
mov edi, esi
cmp ebx, dword [ebp - 0xc]
jne 0x46198e
mov dword [ebp - 0xc], esi
push ebx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00498fb0
mov dword [ebp - 0x10], eax
mov ebx, esi
jmp 0x461a79
cmp dword [ebp + 0x2c], 0
je 0x4619d2
mov eax, dword [ebp + 0x4c]
push eax
mov edx, dword [ebp + 0x10]
push edx
mov ecx, dword [ebx]
push ecx
call fcn.004c331c
cmp eax, 2
jne 0x461a47
mov eax, dword [ebx]
push eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
jmp 0x461a47
mov ecx, dword [ebx]
cmp byte [ecx], 0x3d
jne 0x461a38
mov eax, dword [ebx]
cmp byte [eax + 1], 0
je 0x461a38
push 0x4f5def
mov edx, dword [ebx]
inc edx
push edx
call fcn.004014a8
add esp, 8
test eax, eax
jne 0x461a38
mov ecx, dword [ebp + 8]
push ecx
call fcn.00427074
mov dword [0x50cfd4], eax
cmp dword [0x50cfd4], 0
je 0x461a38
mov eax, dword [ebp + 0x10]
push edi
mov esi, 0x4f5df6
mov edi, eax
mov eax, edi
movsw word es:[edi], word [esi]
pop edi
mov edx, dword [0x50cfd4]
add edx, 0x3f0
push edx
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0040123c
add esp, 8
jmp 0x461a47
mov eax, dword [ebx]
push eax
mov edx, dword [ebp + 0x10]
push edx
call fcn.0040123c
add esp, 8
cmp dword [ebp - 0x14], 0
je 0x461a5f
mov ecx, dword [ebp + 0x10]
cmp byte [ecx], 0
jne 0x461a5f
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x461b4c
test ebx, ebx
je 0x461aca
cmp dword [ebx + 0x18], 0
jne 0x461a79
push 1
mov edx, dword [ebp + 0x10]
push edx
push ebx
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004b79ec
test ebx, ebx
je 0x461aca
cmp dword [ebx + 0x14], 0
je 0x461abf
cmp dword [ebx + 0x18], 0
je 0x461ab8
mov esi, ebx
jmp 0x461a90
mov esi, dword [esi + 0x34]
cmp esi, dword [ebp - 0x10]
je 0x461a9b
cmp dword [esi + 4], 0
je 0x461a8d
cmp dword [esi + 4], 0
je 0x461abf
cmp dword [esi + 0x18], 0
je 0x461ab1
xor eax, eax
mov dword [ebx + 0x14], eax
xor edx, edx
mov dword [esi + 4], edx
mov ebx, esi
jmp 0x45c7b1
mov dword [ebp - 0x18], 1
mov ebx, dword [ebx + 0x30]
test ebx, ebx
jne 0x45c7b9
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x28], 0
je 0x461add
xor eax, eax
mov dword [ebp - 0x28], eax
jmp 0x45c7a2
cmp dword [ebp - 0x18], 0
jne 0x45c7a2
xor esi, esi
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x461b17
cmp dword [ebx + 0x10], 0
je 0x461b05
xor eax, eax
mov dword [ebx + 0x10], eax
xor edx, edx
mov dword [ebx + 0x18], edx
mov esi, 1
cmp dword [ebx + 0x18], 1
je 0x461b10
mov esi, 1
mov ebx, dword [ebx + 0x30]
test ebx, ebx
jne 0x461af0
test esi, esi
je 0x461b4c
cmp dword [ebp - 0x2c], 0xc8
jle 0x45c7a2
mov eax, dword [0x4f29cc]
push eax
push 0
push 0x8fe
call fcn.0041f178
push eax
mov edx, dword [0x4fd9fc]
push edx
call fcn.004bd330
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x10]
mov dword [eax], edx
mov ecx, dword [ebp + 0x30]
mov eax, dword [ebp - 4]
mov dword [ecx], eax
mov edx, dword [ebp + 0x34]
mov ecx, dword [ebp - 8]
mov dword [edx], ecx
mov eax, dword [ebp - 0x30]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x54