Function at 0x430f50
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x51ff9a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb8
push ebx
push ebp
xor eax, eax
push esi
push edi
mov ebp, ecx
mov dword [esp + 0xb4], 0x530160
mov word [esp + 0xb8], 0xffff
mov word [esp + 0xba], ax
mov dword [esp + 0xd0], eax
push ecx
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x549430
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa1d0
push ecx
mov ecx, esp
mov dword [esp + 0x3c], esp
push 6
push 0x549bd4
call fcn.004f58e0
mov ecx, dword [0x5540a8]
call fcn.004fa410
mov ecx, dword [0x5540a8]
lea eax, [esp + 0xb4]
push eax
call fcn.004fa550
cmp ax, 0xffff
je 0x43357d
movsx eax, word [esp + 0xb8]
sub eax, 0
je 0x43272f
dec eax
je 0x431d0c
dec eax
jne 0x430f9d
push 8
push 0x548dac
lea ecx, [esp + 0x34]
call fcn.004f58e0
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5840
lea ecx, [esp + 0x64]
mov byte [esp + 0xd0], 0x3b
call fcn.004f5840
push 0
push 0
push ecx
mov byte [esp + 0xdc], 0x3c
mov ecx, esp
mov dword [esp + 0x44], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x3d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549bcc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
push 6
push 0x5482c0
lea ecx, [esp + 0x34]
call fcn.004f5de0
lea ecx, [esp + 0x2c]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0
call fcn.004f5870
lea edx, [esp + 0x38]
lea eax, [esp + 0x34]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push eax
mov byte [esp + 0xe4], 0x3e
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x3c
call fcn.00420ed0
test al, al
je 0x431124
lea ecx, [esp + 0x30]
call fcn.004f5d00
cmp ax, 0x74
jne 0x431124
push 0x1c
lea ecx, [esp + 0x34]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x3c
jg 0x43112d
inc bl
cmp bl, 5
jb 0x4310ad
jmp 0x431136
cmp bl, 5
jb 0x431636
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x3f
mov ecx, esp
mov dword [esp + 0x48], esp
push 6
push 0x549bc4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
cmp ax, 4
jne 0x4311b8
lea ecx, [esp + 0x64]
mov byte [esp + 0xd0], 0x3b
call fcn.004f5980
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5980
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
mov cl, byte [esp + 0x27]
mov edi, 0x554048
mov byte [esp + 0x44], cl
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
xor edx, edx
mov dword [esp + 0x4c], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x48], edx
mov ebx, ecx
mov dword [esp + 0x50], esi
cmp ebx, 0xfffffffd
jbe 0x43121d
call fcn.0051414b
mov edx, dword [esp + 0x48]
xor ecx, ecx
cmp edx, ecx
je 0x431217
mov al, byte [edx - 1]
test al, al
je 0x431217
cmp al, 0xff
je 0x431217
cmp ebx, ecx
jne 0x431244
dec al
mov byte [edx - 1], al
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x50], ecx
jmp 0x431275
mov esi, dword [esp + 0x50]
jmp 0x43121f
xor ecx, ecx
cmp ebx, ecx
jne 0x431230
push 1
lea ecx, [esp + 0x48]
call fcn.004013e0
jmp 0x431275
cmp esi, 0x1f
ja 0x431239
cmp esi, ebx
jae 0x431252
push 1
lea ecx, [esp + 0x48]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x48]
call fcn.00401a80
mov edx, dword [esp + 0x48]
mov ecx, ebx
mov edi, edx
mov edx, ecx
mov esi, 0x554048
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x4c], ebx
mov byte [eax + ebx], 0
mov cl, byte [0x554048]
xor edx, edx
mov dword [esp + 0x9d], edx
mov byte [esp + 0xd0], 0x40
mov dword [esp + 0xa1], edx
mov byte [esp + 0x9c], cl
mov byte [esp + 0xa5], dl
mov edi, 0x548aa8
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x9c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x38]
lea edx, [esp + 0x34]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x48], esp
push edx
mov byte [esp + 0xe4], 0x41
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x40
call fcn.00420ed0
test al, al
je 0x43135f
lea ecx, [esp + 0x30]
call fcn.004f5d00
cmp ax, 0x74
jne 0x43135f
push 0x1c
lea ecx, [esp + 0x34]
call fcn.004f5b60
and eax, 0xff
sub esp, 8
lea ecx, [esp + 0xa4]
lea eax, [eax + eax*2]
shl eax, 2
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul qword [0x5302b0]
fsub qword [0x530198]
fstp qword [esp]
push str._.2f
push ecx
call fcn.0051497a
add esp, 0x10
lea edi, [esp + 0x9c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfffffffd
jbe 0x43137c
call fcn.0051414b
mov edi, dword [esp + 0x48]
xor esi, esi
cmp edi, esi
je 0x43139c
mov al, byte [edi - 1]
test al, al
je 0x43139c
cmp al, 0xff
je 0x43139c
cmp ebx, esi
jne 0x4313e7
dec al
mov byte [edi - 1], al
jmp 0x4313c1
cmp ebx, esi
jne 0x4313cf
cmp edi, esi
je 0x4313c1
mov al, byte [edi - 1]
lea ecx, [edi - 1]
test al, al
je 0x4313b8
cmp al, 0xff
je 0x4313b8
dec al
mov byte [ecx], al
jmp 0x4313c1
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
jmp 0x43141a
mov eax, dword [esp + 0x50]
cmp eax, 0x1f
ja 0x4313dc
cmp eax, ebx
jae 0x4313f5
push 1
lea ecx, [esp + 0x48]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x48]
call fcn.00401a80
mov edi, dword [esp + 0x48]
mov ecx, ebx
lea esi, [esp + 0x9c]
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]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x4c], ebx
xor esi, esi
mov byte [eax + ebx], 0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x549bbc
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff740
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x549bb4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff8c0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x549bac
call fcn.004f58e0
sub esp, 0x10
lea edx, [esp + 0x58]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
mov byte [esp + 0xe8], 0x42
call fcn.0041fc70
push ecx
mov byte [esp + 0xe8], 0x43
mov ecx, esp
mov dword [esp + 0x28], esp
push 6
push 0x549ba4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
mov byte [esp + 0xe8], 0x40
call fcn.004ffc60
mov ecx, dword [0x5540b4]
call fcn.004ffe70
test ax, ax
jne 0x4312a1
push 1
push ecx
xor esi, esi
mov ecx, esp
mov dword [esp + 0x18], esp
push esi
call fcn.004f5870
lea eax, [esp + 0x38]
lea edx, [esp + 0x34]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x44
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x40
call fcn.00420ed0
test al, al
je 0x43170c
lea ecx, [esp + 0x30]
call fcn.004f5d00
cmp ax, 0x74
jne 0x43170c
push 0x1c
lea ecx, [esp + 0x34]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x46
jg 0x4315fd
push esi
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x46
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b9c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x40
call fcn.004f91a0
cmp ax, 4
jne 0x4315fd
mov eax, dword [esp + 0x48]
cmp eax, esi
je 0x4315b9
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4315b0
cmp al, 0xff
je 0x4315b0
dec al
mov byte [ecx], al
jmp 0x4315b9
push ecx
call fcn.00514140
add esp, 4
lea ecx, [esp + 0x64]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
mov byte [esp + 0xd0], 0x3b
call fcn.004f5980
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5980
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
mov eax, dword [esp + 0x48]
mov byte [esp + 0xd0], 0x3c
cmp eax, esi
je 0x43162a
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x431621
cmp al, 0xff
je 0x431621
dec al
mov byte [ecx], al
jmp 0x43162a
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
xor esi, esi
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x47
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b94
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 8
push 0x548fa4
lea ecx, [esp + 0x34]
call fcn.004f5de0
push 8
push 0x548fb0
lea ecx, [esp + 0x6c]
call fcn.004f5de0
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x64]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
lea edx, [esp + 0x6c]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x38]
lea edx, [esp + 0x34]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x48
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x3c
call fcn.00420ed0
test al, al
jne 0x431754
inc bl
cmp bl, 5
jb 0x4316bf
jmp 0x431759
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x45
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5493d0
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x40
call fcn.004f91a0
jmp 0x431594
cmp bl, 5
jb 0x4317d4
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x49
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b8c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
lea ecx, [esp + 0x64]
mov byte [esp + 0xd0], 0x3b
call fcn.004f5980
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5980
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x4a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b84
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x4b
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b7c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
push esi
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x4c
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b74
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
push 8
push 0x548fbc
lea ecx, [esp + 0x34]
call fcn.004f5de0
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push esi
call fcn.004f5870
lea ecx, [esp + 0x38]
lea edx, [esp + 0x34]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x4d
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x3c
call fcn.00420ed0
push 7
push 0x5493a8
lea ecx, [esp + 0x34]
call fcn.004f5de0
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push esi
call fcn.004f5870
lea ecx, [esp + 0x38]
lea edx, [esp + 0x34]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x4e
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x3c
call fcn.00420ed0
push esi
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x4f
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b6c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x3c
call fcn.004f91a0
cmp ax, 4
jne 0x4319cd
lea ecx, [esp + 0x64]
mov byte [esp + 0xd0], 0x3b
call fcn.004f5980
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5980
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
push 7
push 0x548828
lea ecx, [esp + 0x34]
call fcn.004f5de0
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call fcn.004d3100
mov cl, byte [esp + 0x27]
mov edi, 0x554048
mov byte [esp + 0x80], cl
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x84], edx
mov ebx, ecx
mov dword [esp + 0x88], esi
cmp ebx, 0xfffffffd
mov dword [esp + 0x8c], esi
jbe 0x431a56
call fcn.0051414b
mov edx, dword [esp + 0x84]
xor edi, edi
cmp edx, edi
je 0x431a4d
mov al, byte [edx - 1]
test al, al
je 0x431a4d
cmp al, 0xff
je 0x431a4d
cmp ebx, edi
jne 0x431acf
dec al
mov byte [edx - 1], al
jmp 0x431a7b
mov esi, dword [esp + 0x8c]
jmp 0x431a58
xor edi, edi
cmp ebx, edi
jne 0x431a92
cmp edx, edi
je 0x431a7b
mov al, byte [edx - 1]
dec edx
test al, al
je 0x431a72
cmp al, 0xff
je 0x431a72
dec al
mov byte [edx], al
jmp 0x431a7b
push edx
call fcn.00514140
add esp, 4
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
jmp 0x431b0c
cmp esi, 0x1f
ja 0x431a9b
cmp esi, ebx
jae 0x431ae3
cmp edx, edi
je 0x431aba
mov al, byte [edx - 1]
dec edx
test al, al
je 0x431ab1
cmp al, 0xff
je 0x431ab1
dec al
mov byte [edx], al
jmp 0x431aba
push edx
call fcn.00514140
add esp, 4
mov dword [esp + 0x84], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
push ebx
lea ecx, [esp + 0x84]
call fcn.00401a80
mov edx, dword [esp + 0x84]
mov ecx, ebx
mov edi, edx
mov edx, ecx
mov esi, 0x554048
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x84]
mov dword [esp + 0x88], ebx
mov byte [eax + ebx], 0
mov cl, byte [0x554048]
xor edx, edx
mov dword [esp + 0xbd], edx
mov byte [esp + 0xd0], 0x50
mov dword [esp + 0xc1], edx
mov byte [esp + 0xbc], cl
mov byte [esp + 0xc5], dl
mov edi, 0x548aa8
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xbc]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x38]
lea edx, [esp + 0x34]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x51
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x50
call fcn.00420ed0
test al, al
je 0x431bfb
lea ecx, [esp + 0x30]
call fcn.004f5d00
cmp ax, 9
jne 0x431bfb
push 6
lea ecx, [esp + 0x34]
call fcn.004f5b60
xor ebx, ebx
push 7
lea ecx, [esp + 0x34]
mov bh, al
call fcn.004f5b60
and eax, 0xff
sub esp, 8
or ebx, eax
lea eax, [esp + 0xc4]
mov dword [esp + 0x40], ebx
fild dword [esp + 0x40]
fmul qword [0x530200]
fstp qword [esp]
push str._.2f
push eax
call fcn.0051497a
add esp, 0x10
lea ecx, [esp + 0xbc]
push ecx
lea ecx, [esp + 0x84]
call fcn.0041fe80
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549b64
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff740
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x549bb4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff8c0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549b5c
call fcn.004f58e0
sub esp, 0x10
lea edx, [esp + 0x94]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0xe8], 0x52
call fcn.0041fc70
push ecx
mov byte [esp + 0xe8], 0x53
mov ecx, esp
mov dword [esp + 0x50], esp
push 6
push 0x549b54
call fcn.004f58e0
mov ecx, dword [0x5540b4]
mov byte [esp + 0xe8], 0x50
call fcn.004ffc60
mov ecx, dword [0x5540b4]
call fcn.004ffe70
test ax, ax
jne 0x431b38
lea ecx, [esp + 0x80]
mov byte [esp + 0xd0], 0x3c
call fcn.004010f0
lea ecx, [esp + 0x64]
mov byte [esp + 0xd0], 0x3b
call fcn.004f5980
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x3a
call fcn.004f5980
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
push 8
push 0x548dac
lea ecx, [esp + 0x3c]
call fcn.004f58e0
lea ecx, [esp + 0x28]
mov byte [esp + 0xd0], 0x22
call fcn.004f5840
lea ecx, [esp + 0x68]
mov byte [esp + 0xd0], 0x23
call fcn.004f5840
push 0
push 0
push ecx
mov byte [esp + 0xdc], 0x24
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x25
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b4c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
xor bl, bl
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea eax, [esp + 0x30]
lea edx, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x26
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x24
call fcn.00420ed0
test al, al
je 0x431e38
lea ecx, [esp + 0x28]
call fcn.004f5d00
cmp ax, 6
jl 0x431e38
lea ecx, [esp + 0x28]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
push 4
cdq
and edx, 3
lea ecx, [esp + 0x2c]
add eax, edx
mov esi, eax
sar esi, 2
call fcn.004f5b60
and eax, 0xff
cmp eax, esi
jge 0x431e1c
push 4
lea ecx, [esp + 0x2c]
call fcn.004f5b60
and eax, 0xff
jmp 0x431e34
lea ecx, [esp + 0x28]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
cdq
and edx, 3
add eax, edx
sar eax, 2
test eax, eax
je 0x431e45
inc bl
cmp bl, 5
jb 0x431d8c
jmp 0x431e4a
cmp bl, 5
jb 0x431e98
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x27
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b44
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
cmp ax, 4
je 0x4326f7
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x28
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549bcc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
push 6
push 0x5482c0
lea ecx, [esp + 0x3c]
call fcn.004f5de0
lea eax, [esp + 0x34]
mov ecx, ebp
push eax
call fcn.004d3100
xor bl, bl
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x30]
lea edx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x29
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x24
call fcn.00420ed0
test al, al
je 0x431f71
lea ecx, [esp + 0x28]
call fcn.004f5d00
cmp ax, 0x74
jne 0x431f71
push 0x1c
lea ecx, [esp + 0x2c]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x46
jg 0x431f7a
inc bl
cmp bl, 5
jb 0x431efa
jmp 0x431f83
cmp bl, 5
jb 0x4323ef
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x2a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b3c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
cmp ax, 4
je 0x4326f7
mov al, byte [esp + 0x27]
mov edi, 0x554048
mov byte [esp + 0x54], al
or ecx, 0xffffffff
xor eax, eax
xor esi, esi
xor edx, edx
mov dword [esp + 0x5c], esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x58], edx
mov ebx, ecx
mov dword [esp + 0x60], esi
cmp ebx, 0xfffffffd
jbe 0x432030
call fcn.0051414b
mov edx, dword [esp + 0x58]
test edx, edx
je 0x43202c
mov al, byte [edx - 1]
test al, al
je 0x43202c
cmp al, 0xff
je 0x43202c
test ebx, ebx
jne 0x432055
dec al
push ebx
lea ecx, [esp + 0x58]
mov byte [edx - 1], al
call fcn.004013e0
jmp 0x432086
mov esi, dword [esp + 0x60]
test ebx, ebx
jne 0x432041
push 1
lea ecx, [esp + 0x58]
call fcn.004013e0
jmp 0x432086
cmp esi, 0x1f
ja 0x43204a
cmp esi, ebx
jae 0x432063
push 1
lea ecx, [esp + 0x58]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x58]
call fcn.00401a80
mov edx, dword [esp + 0x58]
mov ecx, ebx
mov edi, edx
mov edx, ecx
mov esi, 0x554048
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x58]
mov dword [esp + 0x5c], ebx
mov byte [ebx + eax], 0
mov cl, byte [0x554048]
xor edx, edx
mov dword [esp + 0xa9], edx
mov byte [esp + 0xd0], 0x2b
mov dword [esp + 0xad], edx
mov byte [esp + 0xa8], cl
mov byte [esp + 0xb1], dl
mov edi, 0x548aa8
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xa8]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x30]
lea edx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x2c
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x2b
call fcn.00420ed0
test al, al
je 0x432170
lea ecx, [esp + 0x28]
call fcn.004f5d00
cmp ax, 0x74
jne 0x432170
push 0x1c
lea ecx, [esp + 0x2c]
call fcn.004f5b60
and eax, 0xff
sub esp, 8
lea ecx, [esp + 0xb0]
lea eax, [eax + eax*2]
shl eax, 2
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul qword [0x5302b0]
fsub qword [0x530198]
fstp qword [esp]
push str._.2f
push ecx
call fcn.0051497a
add esp, 0x10
lea edi, [esp + 0xa8]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfffffffd
jbe 0x43218d
call fcn.0051414b
mov edi, dword [esp + 0x58]
xor esi, esi
cmp edi, esi
je 0x4321b9
mov al, byte [edi - 1]
test al, al
je 0x4321b9
cmp al, 0xff
je 0x4321b9
cmp ebx, esi
jne 0x4321e2
dec al
mov byte [edi - 1], al
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
jmp 0x432215
cmp ebx, esi
jne 0x4321ca
push 1
lea ecx, [esp + 0x58]
call fcn.004013e0
jmp 0x432215
mov eax, dword [esp + 0x60]
cmp eax, 0x1f
ja 0x4321d7
cmp eax, ebx
jae 0x4321f0
push 1
lea ecx, [esp + 0x58]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x58]
call fcn.00401a80
mov edi, dword [esp + 0x58]
mov ecx, ebx
lea esi, [esp + 0xa8]
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]
mov eax, dword [esp + 0x58]
mov dword [esp + 0x5c], ebx
xor esi, esi
mov byte [ebx + eax], 0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549bbc
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff740
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x549bb4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff8c0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549bac
call fcn.004f58e0
sub esp, 0x10
lea edx, [esp + 0x68]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0xe8], 0x2d
call fcn.0041fc70
push ecx
mov byte [esp + 0xe8], 0x2e
mov ecx, esp
mov dword [esp + 0x50], esp
push 6
push 0x549ba4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
mov byte [esp + 0xe8], 0x2b
call fcn.004ffc60
mov ecx, dword [0x5540b4]
call fcn.004ffe70
test ax, ax
jne 0x4320b2
push 1
push ecx
xor esi, esi
mov ecx, esp
mov dword [esp + 0x18], esp
push esi
call fcn.004f5870
lea eax, [esp + 0x30]
lea edx, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x2f
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x2b
call fcn.00420ed0
test al, al
je 0x4324c9
lea ecx, [esp + 0x28]
call fcn.004f5d00
cmp ax, 0x74
jne 0x4324c9
push 0x1c
lea ecx, [esp + 0x2c]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x46
jg 0x4323b6
push esi
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x31
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b34
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x2b
call fcn.004f91a0
cmp ax, 4
jne 0x4323b6
mov eax, dword [esp + 0x58]
cmp eax, esi
je 0x432531
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x432528
cmp al, 0xff
je 0x432528
dec al
mov byte [ecx], al
jmp 0x432531
mov eax, dword [esp + 0x58]
mov byte [esp + 0xd0], 0x24
cmp eax, esi
je 0x4323e3
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x4323da
cmp al, 0xff
je 0x4323da
dec al
mov byte [ecx], al
jmp 0x4323e3
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x32
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b2c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 8
push 0x548f80
lea ecx, [esp + 0x3c]
call fcn.004f5de0
push 8
push 0x548f8c
lea ecx, [esp + 0x70]
call fcn.004f5de0
lea eax, [esp + 0x34]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x68]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
lea edx, [esp + 0x70]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x30]
lea edx, [esp + 0x3c]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x33
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x24
call fcn.00420ed0
test al, al
jne 0x432542
inc bl
cmp bl, 5
jb 0x432478
jmp 0x432547
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x30
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5493d0
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x2b
call fcn.004f91a0
mov eax, dword [esp + 0x58]
cmp eax, esi
je 0x432531
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x432528
cmp al, 0xff
je 0x432528
dec al
mov byte [ecx], al
jmp 0x432531
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
jmp 0x4326f7
cmp bl, 5
jb 0x432579
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x34
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b24
jmp 0x4326e0
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x35
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b1c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x36
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b14
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
push 8
push 0x548f98
lea ecx, [esp + 0x3c]
call fcn.004f5de0
lea eax, [esp + 0x34]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x30]
lea edx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x37
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x24
call fcn.00420ed0
push 7
push 0x549340
lea ecx, [esp + 0x3c]
call fcn.004f5de0
lea eax, [esp + 0x34]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
mov byte [esp + 0xd8], 0x38
lea ecx, [esp + 0x30]
lea edx, [esp + 0x3c]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0x24
call fcn.00420ed0
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x39
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b0c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0x24
call fcn.004f91a0
lea ecx, [esp + 0x68]
mov byte [esp + 0xd0], 0x23
call fcn.004f5980
lea ecx, [esp + 0x28]
mov byte [esp + 0xd0], 0x22
call fcn.004f5980
lea ecx, [esp + 0x34]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
push 8
push 0x548dac
lea ecx, [esp + 0x28]
call fcn.004f58e0
lea ecx, [esp + 0x18]
mov byte [esp + 0xd0], 1
call fcn.004f5840
lea ecx, [esp + 0x40]
mov byte [esp + 0xd0], 2
call fcn.004f5840
push 0
push 0
push ecx
mov byte [esp + 0xdc], 3
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
mov byte [esp + 0x3b], 0
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 4
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x548254
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
mov byte [esp + 0x1f], 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea eax, [esp + 0x20]
lea edx, [esp + 0x28]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 5
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
test al, al
je 0x4328b1
lea ecx, [esp + 0x18]
call fcn.004f5d00
cmp ax, 0xa
jl 0x4328b1
lea ecx, [esp + 0x18]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
push 4
cdq
and edx, 3
lea ecx, [esp + 0x1c]
add eax, edx
mov esi, eax
sar esi, 2
call fcn.004f5b60
and eax, 0xff
cmp eax, esi
jge 0x43284a
push 4
lea ecx, [esp + 0x1c]
call fcn.004f5b60
jmp 0x432862
lea ecx, [esp + 0x18]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
cdq
and edx, 3
add eax, edx
sar eax, 2
xor cl, cl
mov byte [esp + 0x3f], al
test al, al
mov byte [esp + 0x7c], cl
jbe 0x4328b1
movzx si, cl
shl esi, 2
lea ecx, [esp + 0x18]
lea eax, [esi + 5]
push eax
call fcn.004f5b60
add esi, 6
xor ebx, ebx
push esi
lea ecx, [esp + 0x1c]
mov bh, al
call fcn.004f5b60
mov bl, al
cmp ebx, 0x1336
je 0x4328c4
mov cl, byte [esp + 0x7c]
mov al, byte [esp + 0x3f]
inc cl
cmp cl, al
mov byte [esp + 0x7c], cl
jb 0x432870
mov al, byte [esp + 0x1f]
inc al
cmp al, 5
mov byte [esp + 0x1f], al
jae 0x4328d5
jmp 0x4327b7
mov al, byte [esp + 0x1f]
mov byte [esp + 0x27], 1
cmp al, 5
jb 0x432957
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 6
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549b04
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
cmp ax, 4
jne 0x432990
lea ecx, [esp + 0x40]
mov byte [esp + 0xd0], 2
call fcn.004f5980
lea ecx, [esp + 0x18]
mov byte [esp + 0xd0], 1
call fcn.004f5980
lea ecx, [esp + 0x20]
mov byte [esp + 0xd0], 0
call fcn.004f5980
jmp 0x430f9d
cmp byte [esp + 0x3f], 1
je 0x432990
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 7
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549afc
jmp 0x432902
push 0
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 8
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549af4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
cmp ax, 4
je 0x43291f
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 9
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549bcc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 6
push 0x5482c0
lea ecx, [esp + 0x28]
call fcn.004f5de0
lea ecx, [esp + 0x20]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea edx, [esp + 0x20]
lea eax, [esp + 0x28]
push edx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push eax
mov byte [esp + 0xe4], 0xa
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
test al, al
je 0x432ab7
lea ecx, [esp + 0x18]
call fcn.004f5d00
cmp ax, 0x74
jne 0x432ab7
push 0x1c
lea ecx, [esp + 0x1c]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x3c
jg 0x432ac0
inc bl
cmp bl, 5
jb 0x432a40
jmp 0x432ac9
cmp bl, 5
jb 0x432f5c
xor esi, esi
push esi
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0xb
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549aec
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
cmp ax, 4
je 0x43291f
mov cl, byte [esp + 0x27]
mov edi, 0x554048
mov byte [esp + 0x6c], cl
or ecx, 0xffffffff
xor eax, eax
xor edx, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x70], edx
mov ebx, ecx
mov dword [esp + 0x74], esi
cmp ebx, 0xfffffffd
mov dword [esp + 0x78], esi
jbe 0x432b75
call fcn.0051414b
mov edx, dword [esp + 0x70]
test edx, edx
je 0x432b71
mov al, byte [edx - 1]
test al, al
je 0x432b71
cmp al, 0xff
je 0x432b71
test ebx, ebx
jne 0x432b9a
dec al
push ebx
lea ecx, [esp + 0x70]
mov byte [edx - 1], al
call fcn.004013e0
jmp 0x432bcb
mov esi, dword [esp + 0x78]
test ebx, ebx
jne 0x432b86
push 1
lea ecx, [esp + 0x70]
call fcn.004013e0
jmp 0x432bcb
cmp esi, 0x1f
ja 0x432b8f
cmp esi, ebx
jae 0x432ba8
push 1
lea ecx, [esp + 0x70]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x70]
call fcn.00401a80
mov edx, dword [esp + 0x70]
mov ecx, ebx
mov edi, edx
mov edx, ecx
mov esi, 0x554048
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x70]
mov dword [esp + 0x74], ebx
mov byte [eax + ebx], 0
mov cl, byte [0x554048]
xor edx, edx
mov dword [esp + 0x91], edx
mov byte [esp + 0xd0], 0xc
mov dword [esp + 0x95], edx
mov byte [esp + 0x90], cl
mov byte [esp + 0x99], dl
mov edi, 0x548548
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x90]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 1
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x20]
lea edx, [esp + 0x28]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0xd
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0xc
call fcn.00420ed0
test al, al
je 0x432cb5
lea ecx, [esp + 0x18]
call fcn.004f5d00
cmp ax, 0x74
jne 0x432cb5
push 0x1c
lea ecx, [esp + 0x1c]
call fcn.004f5b60
and eax, 0xff
sub esp, 8
lea ecx, [esp + 0x98]
lea eax, [eax + eax*2]
shl eax, 2
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmul qword [0x5302b0]
fsub qword [0x530198]
fstp qword [esp]
push str._.2f
push ecx
call fcn.0051497a
add esp, 0x10
lea edi, [esp + 0x90]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0xfffffffd
jbe 0x432cd2
call fcn.0051414b
mov edi, dword [esp + 0x70]
xor esi, esi
cmp edi, esi
je 0x432cfc
mov al, byte [edi - 1]
test al, al
je 0x432cfc
cmp al, 0xff
je 0x432cfc
cmp ebx, esi
jne 0x432d25
dec al
push esi
lea ecx, [esp + 0x70]
mov byte [edi - 1], al
call fcn.004013e0
jmp 0x432d58
cmp ebx, esi
jne 0x432d0d
push 1
lea ecx, [esp + 0x70]
call fcn.004013e0
jmp 0x432d58
mov eax, dword [esp + 0x78]
cmp eax, 0x1f
ja 0x432d1a
cmp eax, ebx
jae 0x432d33
push 1
lea ecx, [esp + 0x70]
call fcn.004013e0
push ebx
lea ecx, [esp + 0x70]
call fcn.00401a80
mov edi, dword [esp + 0x70]
mov ecx, ebx
lea esi, [esp + 0x90]
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]
mov eax, dword [esp + 0x70]
mov dword [esp + 0x74], ebx
xor esi, esi
mov byte [eax + ebx], 0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549bbc
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff740
push esi
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 6
push 0x549bb4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
call fcn.004ff8c0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 6
push 0x549bac
call fcn.004f58e0
sub esp, 0x10
lea edx, [esp + 0x80]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0xe8], 0xe
call fcn.0041fc70
push ecx
mov byte [esp + 0xe8], 0xf
mov ecx, esp
mov dword [esp + 0x50], esp
push 6
push 0x549ba4
call fcn.004f58e0
mov ecx, dword [0x5540b4]
mov byte [esp + 0xe8], 0xc
call fcn.004ffc60
mov ecx, dword [0x5540b4]
call fcn.004ffe70
test ax, ax
je 0x432e31
push 0x1c
lea ecx, [esp + 0x1c]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x3c
jle 0x432bf7
xor esi, esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push esi
call fcn.004f5870
lea eax, [esp + 0x20]
lea edx, [esp + 0x28]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x10
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 0xc
call fcn.00420ed0
test al, al
je 0x433036
lea ecx, [esp + 0x18]
call fcn.004f5d00
cmp ax, 0x74
jne 0x433036
push 0x1c
lea ecx, [esp + 0x1c]
call fcn.004f5b60
and eax, 0xff
lea eax, [eax + eax*2]
shl eax, 2
cdq
and edx, 0xf
add eax, edx
sar eax, 4
sub eax, 0x28
cmp eax, 0x3c
jg 0x432f23
push esi
push 4
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x12
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549ae4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0xc
call fcn.004f91a0
cmp ax, 4
jne 0x432f23
mov eax, dword [esp + 0x70]
cmp eax, esi
je 0x43309e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x433095
cmp al, 0xff
je 0x433095
dec al
mov byte [ecx], al
jmp 0x43309e
mov eax, dword [esp + 0x70]
mov byte [esp + 0xd0], 3
cmp eax, esi
je 0x432f50
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x432f47
cmp al, 0xff
je 0x432f47
dec al
mov byte [ecx], al
jmp 0x432f50
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], esi
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x13
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549adc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 8
push 0x549054
lea ecx, [esp + 0x28]
call fcn.004f5de0
push 8
push 0x549060
lea ecx, [esp + 0x48]
call fcn.004f5de0
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x40]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
lea edx, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x20]
lea edx, [esp + 0x28]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x14
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
test al, al
jne 0x4330af
inc bl
cmp bl, 5
jb 0x432fe5
jmp 0x4330b4
push esi
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x11
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x5493d0
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 0xc
call fcn.004f91a0
mov eax, dword [esp + 0x70]
cmp eax, esi
je 0x43309e
lea ecx, [eax - 1]
mov al, byte [eax - 1]
test al, al
je 0x433095
cmp al, 0xff
je 0x433095
dec al
mov byte [ecx], al
jmp 0x43309e
push ecx
call fcn.00514140
add esp, 4
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], esi
jmp 0x43291f
cmp bl, 5
jb 0x4330fd
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x15
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549ad4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
jmp 0x43291f
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x16
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549acc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x17
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549ac4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 8
push 0x54906c
lea ecx, [esp + 0x28]
call fcn.004f5de0
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea ecx, [esp + 0x20]
lea edx, [esp + 0x28]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x18
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
push 7
push 0x5492e8
lea ecx, [esp + 0x28]
call fcn.004f5de0
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call fcn.004d3100
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
mov byte [esp + 0xd8], 0x19
lea ecx, [esp + 0x20]
lea edx, [esp + 0x28]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
mov eax, dword [ebp]
mov ecx, ebp
call dword [eax + 0x1c]
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x1a
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549abc
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
mov edx, dword [ebp]
mov ecx, ebp
call dword [edx + 0x18]
test ax, ax
jne 0x43291f
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x1b
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x54827c
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 7
push 0x5483e8
lea ecx, [esp + 0x28]
call fcn.004f5de0
push 7
push 0x5483e0
lea ecx, [esp + 0x48]
call fcn.004f5de0
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
call fcn.004d3100
lea ecx, [esp + 0x40]
push ecx
mov ecx, ebp
call fcn.004d3100
xor bl, bl
push 1
push ecx
lea edx, [esp + 0x48]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.004f5850
lea eax, [esp + 0x20]
lea edx, [esp + 0x28]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x1c
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
test al, al
jne 0x43335d
inc bl
cmp bl, 5
jb 0x433312
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x1d
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549ab4
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 0
push 0
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x1e
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x548254
call fcn.004f58e0
mov ecx, 0x5540a8
mov byte [esp + 0xe0], 3
call fcn.004f91a0
push 8
push 0x548dac
lea ecx, [esp + 0x28]
call fcn.004f5de0
mov byte [esp + 0x1f], 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push 0
call fcn.004f5870
lea eax, [esp + 0x20]
lea edx, [esp + 0x28]
push eax
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
mov byte [esp + 0xe4], 0x1f
call fcn.004f5850
mov ecx, ebp
mov byte [esp + 0xe0], 3
call fcn.00420ed0
test al, al
je 0x4334f7
lea ecx, [esp + 0x18]
call fcn.004f5d00
cmp ax, 6
jl 0x4334f7
mov byte [esp + 0x7c], 0
lea ecx, [esp + 0x18]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
push 4
cdq
and edx, 3
lea ecx, [esp + 0x1c]
add eax, edx
mov esi, eax
sar esi, 2
call fcn.004f5b60
and eax, 0xff
cmp eax, esi
jge 0x433497
push 4
lea ecx, [esp + 0x1c]
call fcn.004f5b60
and eax, 0xff
jmp 0x4334af
lea ecx, [esp + 0x18]
call fcn.004f5d00
movsx eax, ax
sub eax, 6
cdq
and edx, 3
add eax, edx
sar eax, 2
mov ecx, dword [esp + 0x7c]
and ecx, 0xff
cmp ecx, eax
jge 0x4334f7
movzx si, byte [esp + 0x7c]
shl esi, 2
lea ecx, [esp + 0x18]
lea edx, [esi + 5]
push edx
call fcn.004f5b60
add esi, 6
xor ebx, ebx
push esi
lea ecx, [esp + 0x1c]
mov bh, al
call fcn.004f5b60
mov bl, al
cmp ebx, 0x1336
je 0x433512
inc byte [esp + 0x7c]
jmp 0x433457
mov al, byte [esp + 0x27]
test al, al
jne 0x433512
mov al, byte [esp + 0x1f]
inc al
cmp al, 5
mov byte [esp + 0x1f], al
jae 0x433519
jmp 0x4333fa
cmp byte [esp + 0x1f], 5
jb 0x43354b
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x20
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549aac
jmp 0x4330e1
push 0
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push 6
push 0x548208
call fcn.004f58e0
push ecx
mov byte [esp + 0xe0], 0x21
mov ecx, esp
mov dword [esp + 0x24], esp
push 6
push 0x549aa4
jmp 0x4330e1
lea ecx, [esp + 0xb4]
call fcn.00401000
mov ecx, dword [esp + 0xc8]
pop edi
xor ax, ax
mov dword fs:[0], ecx
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret