Function at 0x47b8f0
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe88
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 8], edx
mov dword [ebp - 0xc], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x47d98e
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x5c]
mov eax, 0x47d99c
call fcn.00654410
mov eax, dword [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov al, 4
call fcn.00621464
mov edx, dword [ebp - 0x60]
mov eax, 0x66bae4
pop ecx
call fcn.00403b24
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 8]
cmp dword [0x66badc], 0x2656743
jg 0x47b96a
mov edx, 0x47d9b0
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x47b976
mov edx, 0x47d9c4
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov edx, 0x47d9d4
mov eax, ebx
call fcn.006173f0
mov dword [0x66b748], eax
mov ecx, dword [0x6600a4]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b74c], eax
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47b9af
or dword [0x66b74c], 1
mov ecx, 0x7fffffff
mov edx, 0x47d9f8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b750], eax
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47b9f1
mov eax, dword [0x47da04]
or eax, dword [0x66b750]
mov dword [0x66b750], eax
mov eax, dword [0x47da08]
not eax
and eax, dword [0x66b754]
mov dword [0x66b754], eax
mov al, 2
call fcn.0062ff34
push 0x66b759
push 0x66b75e
push 0x66b762
push 0
push 0x5f5f0303
push 0x4b4b0201
mov ecx, 0x66b758
mov edx, 0x47da14
mov eax, ebx
call fcn.00617404
mov dword [0x66b75a], 0x66b758
lea ecx, [ebp - 0x5c]
mov edx, 0x47da28
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b766
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x47da40
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 0x64]
call fcn.00534278
mov dword [0x66b76a], eax
mov eax, dword [0x66b76a]
call fcn.005342a8
test al, al
jne 0x47ba7b
xor eax, eax
mov dword [0x66b76a], eax
call fcn.004fe288
mov edx, dword [eax + 0x198]
add edx, 0x60
push edx
mov edx, dword [eax + 0x1a0]
add edx, 0x60
push edx
push 0x66b76e
push 0x1010101
mov edx, dword [0x6690a4]
movzx edx, byte [edx]
inc edx
shl edx, 0x10
or edx, 0x909
or edx, 0xa000000
push edx
push 0x3010808
mov eax, dword [eax + 0x194]
lea ecx, [eax + 0x60]
mov edx, 0x47da58
mov eax, ebx
call fcn.00617404
lea eax, [ebp - 0x64]
push eax
mov ecx, 0x47da6c
mov edx, 0x47da80
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov edx, dword [ebp - 0x64]
mov eax, 0x66b772
call fcn.004032c8
lea ecx, [ebp - 0x5c]
mov edx, 0x47da98
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b776
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x47daac
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b77a
call fcn.004038bc
push 0x66b77f
push 0
push 0
push 0
push 0xffff
push 0xffff
mov ecx, 0x66b77e
mov edx, 0x47dac8
mov eax, ebx
call fcn.00617404
lea ecx, [ebp - 0x5c]
mov edx, 0x47dad8
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b780
call fcn.004038bc
push 0xffff
push 0x20
mov ecx, 0x20
mov edx, 0x47daf0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b784], eax
push 0x3e8
push 0xc8
mov ecx, 1
mov edx, 0x47db08
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b788], eax
mov ecx, 0xffff
mov edx, 0x47db1c
mov eax, ebx
call fcn.006173dc
mov dword [0x66b78c], eax
mov ecx, 0xff
mov edx, 0x47db30
mov eax, ebx
call fcn.006173dc
mov dword [0x66b790], eax
lea eax, [ebp - 0x5c]
push eax
mov ecx, 0x47db3c
mov edx, 0x47db50
mov eax, ebx
call fcn.006174a0
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b794
call fcn.004038bc
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x47db64
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b798], eax
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x47db78
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b79c], eax
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x47db8c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7a0], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x47dba0
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b7a4
call fcn.004038bc
xor ecx, ecx
mov edx, 0x47dbb4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
inc eax
mov byte [0x66b7a8], al
lea eax, [ebp - 0x5c]
push eax
mov ecx, 0x47dbc4
mov edx, 0x47dbe0
mov eax, ebx
call fcn.006174a0
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b7a9
call fcn.004038bc
push 0xffff
push 0xf081
mov ecx, 0x20
mov edx, 0x47dbfc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7ad], eax
push 0x1f4
push 0x64
mov ecx, 0xa
mov edx, 0x47dc18
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7b1], eax
push 4
push 2
xor ecx, ecx
mov edx, 0x47dc30
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7b5], al
push 0xc
push 4
xor ecx, ecx
mov edx, 0x47dc4c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7b6], al
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47bd20
mov al, byte [0x66b7b6]
add al, 0xf6
sub al, 2
jae 0x47bd20
mov byte [0x66b7b6], 4
push 0x66b7bf
push 0x66b7c3
push 0
push 0x10101
push 0x3f3f3f
push 0x10205
mov ecx, 0x66b7b7
mov edx, 0x47dc60
mov eax, ebx
call fcn.00617404
push 0x4000
push 5
mov ecx, 1
mov edx, 0x47dc70
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7bb], eax
push 0xff
push 2
xor ecx, ecx
mov edx, 0x47dc88
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7c7], eax
push 0xf4240
push 0x1f4
mov ecx, 0xa
mov edx, 0x47dca4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7cb], eax
push 2
push 2
xor ecx, ecx
mov edx, 0x47dcbc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7cf], al
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [0x66009c]
mov edx, 0x47dcd8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov edx, dword [ebp - 0x64]
mov eax, 0x66b7d0
call fcn.004032c8
push 8
push 0x6600a8
mov ecx, 0x66b7d4
mov edx, 0x47dce8
mov eax, ebx
call fcn.00617738
lea ecx, [ebp - 0x5c]
mov edx, 0x47dd00
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b7dc
call fcn.004038bc
lea eax, [ebp - 0x64]
push eax
xor ecx, ecx
mov edx, 0x47dd14
mov eax, ebx
call fcn.006175c0
mov edx, dword [ebp - 0x64]
mov eax, 0x66b7e0
call fcn.004032c8
lea ecx, [ebp - 0x60]
mov edx, 0x47dd2c
mov eax, ebx
call fcn.0061754c
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00619840
mov eax, dword [ebp - 0x5c]
call fcn.0064d758
mov edx, dword [0x669990]
mov dword [edx], eax
mov eax, dword [0x669990]
mov eax, dword [eax]
mov dl, 1
call fcn.0064f88c
cmp dword [0x66badc], 0x2656743
jg 0x47be80
mov edx, 0x47d9c4
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
push 4
push 0xffffffffffffffff
xor ecx, ecx
mov edx, 0x47dd38
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7e4], al
cmp byte [0x66b7e4], 0xff
jne 0x47bec3
mov byte [0x66b7e4], 1
mov eax, dword [0x669b94]
mov eax, dword [eax]
mov edx, 0xd
call fcn.006560a0
cmp al, 0x30
jne 0x47bec3
mov byte [0x66b7e4], 0
push 0x1e
push 0xa
xor ecx, ecx
mov edx, 0x47dd50
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b7e5], eax
lea ecx, [ebp - 8]
mov edx, 0x47dd64
mov eax, ebx
call fcn.00617530
cmp dword [ebp - 8], 0
je 0x47bfbe
mov eax, dword [ebp - 8]
call fcn.0040351c
mov edx, eax
shr edx, 3
mov eax, dword [0x66b7e9]
call fcn.0064dff0
mov eax, dword [ebp - 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 8]
call fcn.0040351c
mov ecx, eax
mov eax, dword [0x66b7e9]
mov edx, dword [eax + 0x1c]
lea eax, [ebp - 0x3c]
call fcn.0062c674
mov eax, dword [0x66b7e9]
call fcn.0064e3d0
mov eax, dword [0x66b7e9]
mov eax, dword [eax + 0x18]
dec eax
cmp eax, 0
jl 0x47bf75
mov dword [ebp - 0x3c], eax
mov eax, dword [0x66b7e9]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x3c]
mov eax, dword [eax + edx*4]
cmp eax, 2
jl 0x47bf5f
cmp eax, 0x7d0
jle 0x47bf6c
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x66b7e9]
call fcn.0064e29c
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47bf45
mov eax, dword [0x66b7e9]
mov eax, dword [eax + 0x18]
sub eax, 2
cmp eax, 0
jl 0x47bfbe
mov dword [ebp - 0x3c], eax
mov eax, dword [0x66b7e9]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x3c]
mov eax, dword [eax + edx*4]
mov edx, dword [0x66b7e9]
mov edx, dword [edx + 0x1c]
mov ecx, dword [ebp - 0x3c]
cmp eax, dword [edx + ecx*4 + 4]
jne 0x47bfb5
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x66b7e9]
call fcn.0064e29c
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47bf88
mov eax, dword [0x66b7e9]
cmp dword [eax + 0x18], 0
jne 0x47bfde
mov edx, dword [0x6695fc]
mov ecx, 0x40
mov eax, dword [0x66b7e9]
call fcn.0064e1c8
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x60]
call fcn.0061d30c
mov ecx, dword [ebp - 0x60]
mov edx, 0x47dd78
mov eax, ebx
call fcn.006174a0
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b7ed
call fcn.004038bc
push 0xffff
mov eax, dword [0x6690b0]
movzx eax, word [eax]
push eax
xor ecx, ecx
mov edx, 0x47dd88
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov word [0x66b7f1], ax
or word [0x66b7f1], 0x20
test byte [0x66b7f1], 0x80
jne 0x47c056
test byte [0x66b861], 0x10
je 0x47c04c
or dword [0x66b860], 0x2000
and dword [0x66b860], 0xffffefff
push 0x66b99d
push 0x66b99e
push 0
push 0
push 0x10401
push 0x10201
mov ecx, 0x66b99c
mov edx, 0x47dd98
mov eax, ebx
call fcn.00617404
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47c092
mov byte [0x66b7f3], 0
jmp 0x47c0f8
push 4
push 4
xor ecx, ecx
mov edx, 0x47ddac
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7f3], al
mov eax, dword [0x6691c0]
cmp byte [eax], 0
je 0x47c0dc
cmp byte [0x66b7f3], 4
sete al
and eax, 0x7f
mov edx, dword [0x669548]
mov al, byte [edx + eax]
push eax
mov eax, dword [0x669354]
mov eax, dword [eax]
push eax
mov eax, dword [eax]
call dword [eax + 0x88]
jmp 0x47c0f8
mov al, byte [0x66b7f3]
add al, 0xfd
sub al, 2
jb 0x47c0f1
mov eax, dword [0x669328]
cmp byte [eax], 0
jne 0x47c0f8
mov byte [0x66b7f3], 0
push 2
push 0
xor ecx, ecx
mov edx, 0x47ddc0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b7f4], al
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x60]
call fcn.0047b680
mov ecx, dword [ebp - 0x60]
mov edx, 0x47ddd0
mov eax, ebx
call fcn.006174a0
mov eax, dword [ebp - 0x5c]
mov edx, 0x66b9a0
call fcn.00540130
lea ecx, [ebp - 0x5c]
mov edx, 0x47dddc
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b9b4
call fcn.004038bc
lea ecx, [ebp - 0x38]
mov edx, 0x47ddf0
mov eax, ebx
call fcn.006176ac
test byte [ebp - 0x38], 1
jne 0x47c19a
cmp dword [ebp - 0x38], 0
jle 0x47c19a
sub dword [ebp - 0x38], 2
mov edx, dword [ebp - 0x38]
movzx edx, byte [eax + edx]
mov dword [ebp - 0x3c], edx
cmp dword [ebp - 0x3c], 0x30
jg 0x47c194
mov edx, dword [ebp - 0x38]
mov dl, byte [eax + edx + 1]
xor ecx, ecx
mov cl, byte [ebp - 0x3c]
mov byte [ecx + 0x66b7f5], dl
cmp dword [ebp - 0x38], 0
jg 0x47c16e
call fcn.00401fac
lea ecx, [ebp - 0x68]
mov edx, 0x47de00
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x6694c0]
mov eax, dword [eax]
call fcn.0064eb60
lea ecx, [ebp - 0x68]
mov edx, 0x47de10
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x669800]
mov eax, dword [eax]
call fcn.0064eb60
cmp dword [0x66badc], 0x2656743
jg 0x47c231
lea eax, [ebp - 0x68]
push eax
mov ecx, 0x47de20
mov edx, 0x47de54
mov eax, ebx
call fcn.006175c0
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x6696b4]
mov eax, dword [eax]
mov eax, dword [eax + 8]
call fcn.0064eb60
jmp 0x47c263
lea eax, [ebp - 0x68]
push eax
mov ecx, 0x47de20
mov edx, 0x47de68
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x6696b4]
mov eax, dword [eax]
mov eax, dword [eax + 8]
call fcn.0064eb60
mov eax, dword [0x6696b4]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dl, 1
call fcn.0064f88c
lea eax, [ebp - 0x68]
push eax
xor ecx, ecx
mov edx, 0x47de7c
mov eax, ebx
call fcn.006175c0
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov eax, dword [ebp - 0x64]
push eax
call fcn.00450040
mov eax, dword [eax + 0x2c]
pop edx
call fcn.0064eb60
push ebp
xor edx, edx
mov eax, dword [0x66bab8]
call fcn.0047b710
pop ecx
push ebp
mov dl, 1
mov eax, dword [0x66babc]
call fcn.0047b710
pop ecx
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47c2f9
call fcn.004959b8
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 8]
mov ecx, 0x47de90
call fcn.004906b8
call fcn.004959b8
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 8]
mov ecx, 0x47dea4
call fcn.004906b8
mov edx, 0x47debc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea ecx, [ebp - 0x64]
mov edx, 0x47ded4
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 0x64]
call fcn.00534278
mov dword [0x66b938], eax
mov eax, dword [0x66b938]
call fcn.005342a8
test al, al
jne 0x47c336
xor eax, eax
mov dword [0x66b938], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov edi, dword [0x669794]
mov esi, dword [0x669380]
mov dword [ebp - 0x58], 0x66b93c
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [edi]
mov edx, dword [0x669398]
mov ecx, dword [edx + eax*4]
lea eax, [ebp - 0x64]
mov edx, 0x47dee8
call fcn.00403568
mov eax, dword [ebp - 0x64]
push eax
lea eax, [ebp - 0x60]
mov edx, dword [esi]
call fcn.00403a34
mov ecx, dword [ebp - 0x60]
mov eax, ebx
pop edx
call fcn.006174a0
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x58]
call fcn.004038bc
inc dword [ebp - 0x3c]
add dword [ebp - 0x58], 4
add esi, 4
add edi, 4
cmp dword [ebp - 0x3c], 5
jne 0x47c34e
cmp dword [0x66badc], 0x2656743
jg 0x47c3bb
mov edx, 0x47defc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x47c3c7
mov edx, 0x47df18
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea edx, [ebp - 0x5c]
mov eax, 0x47df24
call fcn.00654410
mov eax, dword [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov al, 4
call fcn.00621464
mov edx, dword [ebp - 0x60]
mov eax, 0x66b9b8
pop ecx
call fcn.00403b24
lea ecx, [ebp - 0x5c]
mov edx, 0x47df3c
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b9bc
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x47df54
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b9c0
call fcn.004038bc
lea ecx, [ebp - 0x60]
mov edx, 0x47df68
mov eax, ebx
call fcn.0061754c
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00619840
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b9c4
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x47df7c
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, 0x66b9c8
call fcn.004032c8
push 0x66b9e8
push 0x66b9e9
push 0
push 0
push 0x10501
push 0x500
mov ecx, 0x66b9ea
mov edx, 0x47d9e8
mov eax, ebx
call fcn.00617404
lea ecx, [ebp - 0x5c]
mov edx, 0x47df90
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b9cc
call fcn.004038bc
push 0x7bc0
push 0x2490
mov ecx, 0x5a0
mov edx, 0x47dfa0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9d0], eax
push 0x7bc0
push 0x1464
mov ecx, 0x5a0
mov edx, 0x47dfb0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9d4], eax
push 0x1f40
push 0xfa0
xor ecx, ecx
mov edx, 0x47dfc0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9d8], eax
push 0x1f40
push 0x1388
mov ecx, 0xfa0
mov edx, 0x47dfd0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9dc], eax
push 0x1f40
push 0x3e8
xor ecx, ecx
mov edx, 0x47dfe0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9e0], eax
push 0x7d0
push 0x3e8
xor ecx, ecx
mov edx, 0x47dff0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b9e4], eax
lea ecx, [ebp - 0x64]
mov edx, 0x47e000
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, 0x66b9ec
call fcn.004032c8
mov edx, 0x47e014
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov al, 5
call fcn.0061c3e4
test al, al
je 0x47c5a0
mov byte [ebp - 0x11], 2
jmp 0x47c5ca
push 2
push 2
xor ecx, ecx
mov edx, 0x47e024
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 1
je 0x47c5c6
mov al, 4
call fcn.0061c3e4
test al, al
je 0x47c5ca
mov byte [ebp - 0x11], 0
mov eax, dword [0x6691c4]
mov eax, dword [eax]
mov ecx, 6
cdq
idiv ecx
mov dword [ebp - 0x30], eax
mov eax, dword [0x669188]
mov eax, dword [eax]
mov ecx, 6
cdq
idiv ecx
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x68]
call fcn.0047b5d8
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x47e034
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x30]
mov eax, ebx
call fcn.006173dc
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x68]
call fcn.0047b5d8
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x47e040
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x34]
mov eax, ebx
call fcn.006173dc
mov dword [ebp - 0x18], eax
mov eax, dword [0x6691c4]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x30]
shl eax, 2
push eax
lea eax, [ebp - 0x68]
call fcn.0047b5d8
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x47e04c
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [0x669364]
mov ecx, dword [ecx]
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov esi, eax
mov eax, dword [0x669188]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x34]
shl eax, 2
push eax
lea eax, [ebp - 0x68]
call fcn.0047b5d8
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x47e058
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [0x669340]
mov ecx, dword [ecx]
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov dword [ebp - 0x2c], eax
call fcn.004fe288
mov dword [ebp - 0x48], eax
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.0063b41c
call fcn.0064d970
mov edi, eax
push edi
push 0x47b620
push 0
push 0
mov eax, dword [0x669634]
mov eax, dword [eax]
call eax
mov byte [ebp - 0x41], 1
mov eax, dword [edi + 8]
test eax, eax
jns 0x47c6ef
add eax, 0xf
sar eax, 4
dec eax
cmp eax, 0
jl 0x47c747
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x2c]
sub eax, 0xc8
push eax
lea eax, [ebp - 0x78]
push eax
mov ecx, esi
sub ecx, 0xc8
mov edx, dword [ebp - 0x18]
add edx, 0x64
mov eax, dword [ebp - 0x1c]
add eax, 0x64
call fcn.0064d694
lea edx, [ebp - 0x78]
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0x3c]
shl ecx, 4
add eax, ecx
call fcn.006188a4
test al, al
je 0x47c73e
mov byte [ebp - 0x41], 0
jmp 0x47c747
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47c6fb
mov eax, edi
call fcn.004028c0
cmp byte [ebp - 0x41], 0
je 0x47c772
mov eax, dword [ebp - 0x30]
shl eax, 2
push eax
mov eax, dword [ebp - 0x34]
shl eax, 2
push eax
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x48]
mov esi, dword [eax]
call dword [esi + 0x3c]
jmp 0x47c785
push esi
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x48]
mov esi, dword [eax]
call dword [esi + 0x3c]
mov dl, byte [ebp - 0x11]
mov eax, dword [ebp - 0x48]
call fcn.0063b41c
mov edx, 0x47e064
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov cl, 1
mov edx, 0x47e07c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x66b950], al
inc dword [0x66b954]
test byte [0x66b74f], 4
je 0x47c7d8
push 0x63
push 1
mov ecx, 1
mov edx, 0x47e090
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b954], eax
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47c810
push 2
push 0
xor ecx, ecx
mov edx, 0x47e0a8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b958], al
push 2
push 2
xor ecx, ecx
mov edx, 0x47e0bc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b959], al
mov edx, 0x47e0d0
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
push 0x1f4
push 0x64
mov ecx, 0xa
mov edx, 0x47e0e0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0xc], eax
push 4
push 4
xor ecx, ecx
mov edx, 0x47e0f0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
mov eax, dword [ebp - 4]
lea esi, [eax + 0x21]
lea eax, [esi + 1]
push eax
lea eax, [esi + 2]
push eax
lea eax, [esi + 3]
push eax
push 0
push 0x1030101
push 0x1020000
mov ecx, esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov edx, 0x47e104
call fcn.00617404
push 6
push 3
xor ecx, ecx
mov edx, 0x47e114
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov byte [esi + 4], al
cmp dword [0x66badc], 0x2656743
jg 0x47c8b1
mov edx, 0x47e128
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x47c8bd
mov edx, 0x47e148
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
call fcn.005fad14
mov dword [ebp - 0x4c], eax
push 1
push 0
xor ecx, ecx
mov edx, 0x47e15c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 0x4c]
mov byte [edx + 0x20b], al
push 0xff
push 0
xor ecx, ecx
mov edx, 0x47e16c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 0x4c]
mov byte [edx + 0x20c], al
mov byte [ebp - 0x25], 0
mov dword [ebp - 0x58], 0x66008c
mov esi, 0x660094
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x20], eax
cmp byte [ebp - 0x25], 0
jne 0x47c92c
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x1a8]
mov dword [ebp - 0x20], eax
call fcn.0064d744
mov dword [ebp - 0x24], eax
push 0x1e
push 0
lea eax, [ebp - 0x64]
mov edx, dword [ebp - 0x58]
mov edx, dword [edx]
call fcn.00403438
mov edx, dword [ebp - 0x64]
xor ecx, ecx
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
dec eax
mov dword [ebp - 0x40], eax
mov edi, dword [ebp - 0x40]
test edi, edi
jl 0x47c995
inc edi
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x64]
mov edx, dword [ebp - 0x3c]
mov eax, dword [esi]
call fcn.00655344
mov edx, dword [ebp - 0x64]
lea ecx, [ebp - 0xc]
mov eax, ebx
call fcn.0061754c
cmp dword [ebp - 0xc], 0
je 0x47c98f
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 0x30]
inc dword [ebp - 0x3c]
dec edi
jne 0x47c964
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x120]
mov edx, dword [ebp - 0x24]
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
call fcn.004028c0
inc byte [ebp - 0x25]
add esi, 4
add dword [ebp - 0x58], 4
cmp byte [ebp - 0x25], 2
jne 0x47c90e
mov edx, 0x47e184
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6600b0]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b828], eax
cmp dword [0x66b748], 0
jne 0x47ca14
mov eax, dword [0x6691c4]
mov eax, dword [eax]
add eax, eax
lea eax, [eax + eax*4]
mov edx, dword [0x669188]
mov ecx, dword [edx]
cdq
idiv ecx
cmp eax, 0xe
jle 0x47ca14
or dword [0x66b828], 0x1000
push 2
push 2
xor ecx, ecx
mov edx, 0x47e194
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b82c], al
push 0x66b831
push 0x66b832
push 0
push 0
push 0x20102
push 1
mov ecx, 0x66b830
mov edx, 0x47de90
mov eax, ebx
call fcn.00617404
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47ca72
cmp byte [0x66b830], 2
jne 0x47ca6b
mov byte [0x66b830], 1
mov byte [0x66b832], 0
push 0x66b834
push 0x66b839
push 0
push 0x10000
push 0x50401
push 0x10201
mov ecx, 0x66b833
mov edx, 0x47e1a8
mov eax, ebx
call fcn.00617404
mov eax, dword [0x6691c4]
mov eax, dword [eax]
mov ecx, 3
cdq
idiv ecx
push eax
mov eax, dword [0x669aa0]
mov eax, dword [eax]
add eax, eax
push eax
mov ecx, dword [0x669aa0]
mov ecx, dword [ecx]
mov edx, 0x47e1b8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b835], eax
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47cae9
mov eax, dword [0x669714]
mov eax, dword [eax]
mov dword [0x66b83e], eax
jmp 0x47cb22
mov ecx, dword [0x66965c]
mov ecx, dword [ecx]
mov edx, 0x47e1cc
mov eax, ebx
call fcn.006173dc
mov dword [0x66b83e], eax
cmp dword [0x66badc], 0x2670938
jge 0x47cb18
or dword [0x66b83e], 0x80000
or dword [0x66b83e], 0x100000
cmp dword [0x66badc], 0x2656743
jg 0x47cb68
mov cl, 1
mov edx, 0x47e1e0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x66b842], al
mov eax, dword [0x6694bc]
movzx eax, byte [eax]
mov edx, 2
sub edx, eax
push edx
push 0
xor ecx, ecx
mov edx, 0x47e1f8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b843], al
jmp 0x47cb9c
push 0x66b843
push 0
push 0
push 0
mov eax, dword [0x6694bc]
movzx eax, byte [eax]
mov edx, 2
sub edx, eax
shl edx, 8
or edx, 1
push edx
push 1
mov ecx, 0x66b842
mov edx, 0x47e1e0
mov eax, ebx
call fcn.00617404
mov edx, 0x47e208
mov eax, ebx
call fcn.006173f0
mov edx, 0x66b844
mov dword [edx], eax
mov edx, 0x47e218
mov eax, ebx
call fcn.006173f0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
and eax, 0xffff
call fcn.0050c20c
mov byte [0x66b848], al
mov eax, dword [ebp - 0x3c]
shr eax, 0x10
call fcn.0050c20c
mov byte [0x66b849], al
mov eax, dword [0x6694bc]
cmp byte [eax], 0
je 0x47cbfb
mov ax, word [0x47e220]
mov word [0x66b84a], ax
jmp 0x47cc8d
mov edx, 0x47e22c
mov eax, ebx
call fcn.006173f0
mov esi, eax
mov ax, word [0x47e238]
mov word [0x66b84a], ax
mov dword [ebp - 0x3c], 0xa
mov al, byte [ebp - 0x3c]
cmp al, 0xf
ja 0x47cc29
and eax, 0x7f
bt esi, eax
jae 0x47cc41
mov eax, dword [ebp - 0x3c]
call fcn.0050c20c
cmp al, 0xf
ja 0x47cc41
and eax, 0x7f
bts dword [0x66b84a], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47cc1c
mov edx, 0x47e244
mov eax, ebx
call fcn.006173f0
mov esi, eax
mov dword [ebp - 0x3c], 0xa
mov al, byte [ebp - 0x3c]
cmp al, 0xf
ja 0x47cc6c
and eax, 0x7f
bt esi, eax
jae 0x47cc84
mov eax, dword [ebp - 0x3c]
call fcn.0050c20c
cmp al, 0xf
ja 0x47cc84
and eax, 0x7f
bts dword [0x66b84c], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47cc5f
call fcn.0047a45c
push 8
push 8
xor ecx, ecx
mov edx, 0x47e254
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b84e], eax
push 3
push 3
xor ecx, ecx
mov edx, 0x47e268
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b852], al
mov ecx, 0x80
mov edx, 0x47e27c
mov eax, ebx
call fcn.006173dc
mov byte [0x66b853], al
push 0x1f4
push 0
mov ecx, 0xfffffffc
mov edx, 0x47e28c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b854], eax
cmp dword [0x66b854], 0
jle 0x47cd0c
cmp dword [0x66b854], 0xa
jge 0x47cd0c
xor eax, eax
mov dword [0x66b854], eax
movzx ecx, word [0x6600a0]
mov edx, 0x47e29c
mov eax, ebx
call fcn.006173dc
mov word [0x66b858], ax
mov eax, 0x48
call fcn.0064be40
mov ecx, eax
mov edx, 0x47e2b0
mov eax, ebx
call fcn.006173dc
mov edx, dword [0x669188]
mov edx, dword [edx]
call fcn.00652c54
mov dword [0x66b85a], eax
cmp dword [0x66b85a], 0
jle 0x47cd68
cmp dword [0x66b85a], 0x10
jge 0x47cd68
xor eax, eax
mov dword [0x66b85a], eax
mov eax, dword [ebp - 4]
add eax, 0x1c
lea edx, [eax + 1]
push edx
lea edx, [eax + 2]
push edx
lea edx, [eax + 3]
push edx
push 0
push 0x1030101
push 0x1030000
mov ecx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov edx, 0x47e104
call fcn.00617404
mov eax, dword [ebp - 4]
lea edx, [eax + 0x1c]
mov eax, dword [ebp - 4]
call fcn.0047e9ec
mov edx, 0x47e2c4
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6600b4]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b860], eax
test byte [0x66b860], 1
setne al
neg al
sbb eax, eax
push eax
mov eax, dword [0x66984c]
mov eax, dword [eax]
push eax
call sub.shell32.dll_DragAcceptFiles
mov eax, 0x66b868
call fcn.0053e6c8
mov edx, 0x47e2d4
mov eax, ebx
call fcn.006173f0
mov dword [0x66b880], eax
mov ecx, 0xff0000
mov edx, 0x47e2e8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b8a4], eax
push 0x14
push 2
mov ecx, 1
mov edx, 0x47e2fc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8c4], eax
push 0x66b8cc
push 0x66b8d4
push 0x66b8dc
push 0
push 0x91414ff
push 0x1050000
mov ecx, 0x66b8c8
mov edx, 0x47e320
mov eax, ebx
call fcn.00617404
mov edx, 0x47e334
mov eax, ebx
call fcn.006173f0
mov dword [0x66b8d0], eax
mov ecx, 0xff
mov edx, 0x47e348
mov eax, ebx
call fcn.006173dc
mov dword [0x66b8d8], eax
mov ecx, 0xff00
mov edx, 0x47e35c
mov eax, ebx
call fcn.006173dc
mov dword [0x66b8e0], eax
push 2
push 0
xor ecx, ecx
mov edx, 0x47e370
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b8e4], al
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47ceea
mov edx, 0x47e380
mov eax, ebx
call fcn.006173f0
mov byte [0x66b8e5], al
mov al, byte [0x47e38c]
and al, byte [0x66b8e5]
mov dl, byte [0x47e38c]
cmp dl, al
jne 0x47ceea
mov al, byte [0x47e238]
mov byte [0x66b8e5], al
mov dword [0x66b8e8], 0x2d0
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47cf1b
push 0x3de0
push 0x2d0
xor ecx, ecx
mov edx, 0x47e398
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8e8], eax
mov edx, 0x47e3b0
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6600b8]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov dword [0x66b8ec], eax
test byte [0x66b8ec], 0x40
je 0x47cfb7
call fcn.005336d8
mov dword [ebp - 0x50], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x47e3c4
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
add eax, 0xc
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x47e3dc
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
add eax, 0x10
call fcn.004038bc
lea ecx, [ebp - 8]
mov edx, 0x47e3fc
mov eax, ebx
call fcn.00617530
cmp dword [ebp - 8], 0
je 0x47cfb7
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 8]
call fcn.0061980c
mov eax, dword [ebp - 0x64]
call fcn.0064d6d4
mov edx, dword [ebp - 0x50]
mov dword [edx + 0x14], eax
lea ecx, [ebp - 0x68]
mov edx, 0x47e414
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061980c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x66baec]
call fcn.0064eb60
lea ecx, [ebp - 0x5c]
mov edx, 0x47e424
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66bae8
call fcn.004038bc
cmp dword [0x66bae8], 0
jne 0x47d02c
lea edx, [ebp - 0x5c]
mov eax, 0x47e434
call fcn.00654410
mov eax, dword [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov al, 4
call fcn.00621464
mov edx, dword [ebp - 0x60]
mov eax, 0x66bae8
pop ecx
call fcn.00403b24
push 0
mov eax, dword [0x66bae8]
push eax
call sub.kernel32.dll_CreateDirectoryW
push 9
push 5
xor ecx, ecx
mov edx, 0x47e444
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8f0], eax
push 0x10
push 2
xor ecx, ecx
mov edx, 0x47e45c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8f4], eax
push 0xe42
push 0x78
mov ecx, 1
mov edx, 0x47e474
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8f8], eax
push 0x78
push 3
xor ecx, ecx
mov edx, 0x47e494
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b8fc], eax
push 3
push 0
xor ecx, ecx
mov edx, 0x47e4a8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b900], al
push 5
push 2
xor ecx, ecx
mov edx, 0x47e4c0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b909], al
xor eax, eax
mov dword [ebp - 0x3c], eax
mov esi, 0x6600bc
mov eax, dword [ebp - 0x3c]
sub eax, 1
jb 0x47d0e2
je 0x47d0eb
dec eax
je 0x47d0f4
jmp 0x47d0fd
mov dword [ebp - 0x10], 0x66b90a
jmp 0x47d104
mov dword [ebp - 0x10], 0x66b90e
jmp 0x47d104
mov dword [ebp - 0x10], 0x66b912
jmp 0x47d104
mov dword [ebp - 0x10], 0x66b916
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x64]
mov dl, byte [esi]
call fcn.00403418
mov ecx, dword [ebp - 0x64]
lea eax, [ebp - 0x68]
mov edx, 0x47e4d8
call fcn.00403568
mov edx, dword [ebp - 0x68]
mov ecx, 0x47e4ec
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0x10]
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x10]
call fcn.004032c8
inc dword [ebp - 0x3c]
inc esi
cmp dword [ebp - 0x3c], 4
jne 0x47d0d3
push 2
push 1
xor ecx, ecx
mov edx, 0x47e4f8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b91a], al
lea ecx, [ebp - 0x5c]
mov edx, 0x47e510
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b91b
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x47e528
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, 0x66b91f
call fcn.004032c8
cmp dword [0x66b91f], 0
jne 0x47d1ad
mov eax, 0x66b91f
mov edx, 0x47e544
call fcn.004032c8
lea ecx, [ebp - 0x5c]
mov edx, 0x47e554
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66b923
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x47e570
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, 0x66b927
call fcn.004032c8
push 0xb
push 0xffffffffffffffff
or ecx, 0xffffffff
mov edx, 0x47e588
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66b92b], eax
push 3
push 0
xor ecx, ecx
mov edx, 0x47e59c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x66b92f], al
cmp dword [0x66badc], 0x2656743
jg 0x47d28b
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e5b0
mov eax, dword [0x66baf0]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e5c8
mov eax, dword [0x66baf4]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e5e8
mov eax, dword [0x66baf8]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e5fc
mov eax, dword [0x66bafc]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e614
mov eax, dword [0x66bb00]
call fcn.0061837c
jmp 0x47d2f4
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e630
mov eax, dword [0x66baf0]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e644
mov eax, dword [0x66baf4]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e5e8
mov eax, dword [0x66baf8]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e658
mov eax, dword [0x66bafc]
call fcn.0061837c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov edx, 0x47e66c
mov eax, dword [0x66bb00]
call fcn.0061837c
mov edx, 0x47e680
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6600c0]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov byte [0x66ba00], al
lea ecx, [ebp - 0x64]
mov edx, 0x47e690
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, 0x66ba04
call fcn.004032c8
push 0x7fffffff
push 0x7fffffff
mov ecx, 4
mov edx, 0x47e6a8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66ba08], eax
cmp dword [0x66ba08], 0x7fffffff
je 0x47d37d
cmp dword [0x66ba08], 0x40
jle 0x47d376
mov dword [0x66ba08], 0x40
jmp 0x47d37d
and dword [0x66ba08], 0xfffffffc
mov edx, 0x47e6bc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov eax, dword [0x6694bc]
cmp byte [eax], 0
jne 0x47d517
cmp dword [0x66badc], 0x2670938
jge 0x47d438
call fcn.004959b8
call fcn.00492f40
mov eax, dword [eax + 0x9c]
mov edx, dword [0x66ba24]
mov dword [edx + 4], eax
lea ecx, [ebp - 0x64]
mov edx, 0x47e6d0
mov eax, ebx
call fcn.00617530
mov edx, dword [ebp - 0x64]
mov eax, dword [0x66ba24]
mov eax, dword [eax + 8]
call fcn.00624464
mov eax, dword [0x66ba24]
mov eax, dword [eax + 4]
mov edx, dword [0x66bb04]
cmp eax, dword [edx + 4]
jne 0x47d42c
mov eax, dword [0x66bb04]
mov edx, dword [eax + 8]
mov eax, dword [0x66ba24]
mov eax, dword [eax + 8]
call fcn.0047a74c
test al, al
je 0x47d42c
mov edx, dword [0x66bb0c]
mov eax, dword [0x66ba24]
call fcn.0047a7cc
mov eax, dword [0x6694f8]
mov al, byte [eax]
mov byte [0x66ba29], al
jmp 0x47d517
mov byte [0x66ba28], 2
jmp 0x47d517
xor eax, eax
mov dword [ebp - 0x3c], eax
xor eax, eax
mov al, byte [ebp - 0x3c]
mov eax, dword [eax*4 + 0x66ba1c]
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x64]
mov eax, 0x47e6d8
mov edx, dword [ebp - 0x3c]
call fcn.00655344
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax + 4]
mov eax, ebx
call fcn.006173dc
mov edx, dword [ebp - 0x54]
mov dword [edx + 4], eax
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x64]
mov eax, 0x47e6e4
mov edx, dword [ebp - 0x3c]
call fcn.00655344
mov edx, dword [ebp - 0x64]
mov ecx, 0x47e6f8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov eax, dword [ebp - 8]
mov edx, 0x47e6f8
call fcn.0040362c
je 0x47d4b2
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 8]
call fcn.00624464
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 3
jne 0x47d43d
push 0x66ba29
push 0
push 0
push 0
push 0x102
mov eax, dword [0x6694f8]
movzx eax, byte [eax]
shl eax, 8
or eax, 0
push eax
mov ecx, 0x66ba28
mov edx, 0x47e704
mov eax, ebx
call fcn.00617404
cmp byte [0x66ba29], 0
je 0x47d517
mov eax, dword [0x6694f8]
cmp byte [eax], 0
je 0x47d517
call fcn.0047a544
test al, al
je 0x47d510
mov byte [0x66ba28], 1
jmp 0x47d517
mov byte [0x66ba28], 0
xor eax, eax
mov al, byte [0x66ba28]
mov eax, dword [eax*4 + 0x66ba1c]
call fcn.0047a814
lea ecx, [ebp - 8]
mov edx, 0x47e718
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 8]
call fcn.0040351c
dec eax
je 0x47d5b0
cmp dword [ebp - 8], 0
je 0x47d562
mov eax, dword [ebp - 8]
call fcn.0040351c
and eax, 0x80000007
jns 0x47d55e
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x47d579
mov edx, dword [0x6692d8]
mov ecx, 0x120
mov eax, dword [0x66ba2c]
call fcn.0064e1c8
jmp 0x47d5b0
mov eax, dword [ebp - 8]
call fcn.0040351c
mov edx, eax
shr edx, 3
mov eax, dword [0x66ba2c]
call fcn.0064dff0
mov eax, dword [ebp - 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 8]
call fcn.0040351c
mov ecx, eax
mov eax, dword [0x66ba2c]
mov edx, dword [eax + 0x1c]
lea eax, [ebp - 0x3c]
call fcn.0062c674
mov ecx, 0xff000000
xor edx, edx
mov eax, dword [0x66ba2c]
call fcn.0064e25c
mov edx, 0x47e728
mov eax, ebx
call fcn.006173f0
mov dword [0x66ba30], eax
mov eax, 0x66ba34
mov ecx, 0xff
mov edx, 0x40
call fcn.00402694
lea ecx, [ebp - 8]
mov edx, 0x47e73c
mov eax, ebx
call fcn.00617530
mov eax, dword [ebp - 8]
call fcn.0040351c
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jle 0x47d62b
test byte [ebp - 0x3c], 1
jne 0x47d62b
cmp dword [ebp - 0x3c], 0x80
jg 0x47d62b
mov eax, dword [ebp - 8]
mov dword [ebp - 0x40], eax
mov edx, 0x66ba34
lea eax, [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
call fcn.0062c674
mov edx, 0x47e754
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
movzx ecx, word [0x6600c4]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov word [0x66ba74], ax
xor ecx, ecx
mov cl, byte [0x6600c8]
mov edx, 0x47e768
mov eax, ebx
call fcn.006173dc
mov byte [0x66ba76], al
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x47e778
mov edx, 0x47e784
mov eax, ebx
call fcn.006174a0
lea eax, [ebp - 0x178]
mov edx, dword [ebp - 0xc]
mov ecx, 0xff
call fcn.00403a44
lea eax, [ebp - 0x178]
mov edx, 0x47e790
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.00402624
jne 0x47d6b9
mov edx, 0x47e79c
mov eax, dword [0x66ba78]
call fcn.0064eb60
jmp 0x47d6d1
lea edx, [ebp - 0x5c]
mov eax, dword [ebp - 0xc]
call fcn.00619840
mov edx, dword [ebp - 0x5c]
mov eax, dword [0x66ba78]
call fcn.0064ec04
mov edx, 0x47e834
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov cl, 1
mov edx, 0x47e848
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x66ba80], al
mov ecx, 0x80000000
mov edx, 0x47e858
mov eax, ebx
call fcn.006173dc
mov dword [0x66ba84], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x47e868
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66ba88
call fcn.004038bc
mov edx, 0x47e878
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6600cc]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov byte [0x66ba8c], al
lea edx, [ebp - 0x5c]
mov eax, 0x47e880
call fcn.00654410
mov eax, dword [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov al, 4
call fcn.00621464
mov edx, dword [ebp - 0x60]
mov eax, 0x66ba90
pop ecx
call fcn.00403b24
lea ecx, [ebp - 0x5c]
mov edx, 0x47e898
mov eax, ebx
call fcn.00617568
mov edx, dword [ebp - 0x5c]
mov eax, 0x66ba94
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x47e8ac
mov eax, ebx
call fcn.0061754c
mov edx, dword [ebp - 0x5c]
mov eax, 0x66ba98
call fcn.004038bc
lea eax, [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov eax, 0x47e8c8
call fcn.00654410
mov ecx, dword [ebp - 0x60]
mov edx, 0x47e8d8
mov eax, ebx
call fcn.006174a0
mov edx, dword [ebp - 0x5c]
mov eax, 0x66ba9c
call fcn.004038bc
mov edx, 0x47e8fc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov eax, dword [0x66bac0]
add eax, 0x21
push eax
push 0
push 0
push 0
push 0x104
push 0
mov eax, dword [0x66bac0]
lea ecx, [eax + 0x20]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.00617404
mov edx, 0x47e910
mov eax, ebx
call fcn.006173f0
dec eax
cmp eax, 0
jl 0x47d8b1
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x64]
mov eax, 0x47e918
mov edx, dword [ebp - 0x3c]
call fcn.00655344
mov edx, dword [ebp - 0x64]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
or ecx, 0xffffffff
mov edx, 0x47e92c
mov eax, ebx
call fcn.006173dc
push eax
or ecx, 0xffffffff
mov edx, 0x47e940
mov eax, ebx
call fcn.006173dc
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x60]
mov edx, 0x47e954
mov eax, ebx
call fcn.0061754c
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00619840
mov eax, dword [ebp - 0x5c]
push eax
mov edx, 0x47e968
mov eax, ebx
call fcn.006173f0
mov ecx, eax
mov dl, 1
mov eax, dword [0x47a0c0]
call fcn.0047ad7c
mov edx, eax
mov eax, dword [0x66bac0]
call fcn.0064e1f0
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x47d824
mov edx, 0x47e978
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6600d0]
mov edx, 0x47d9e8
mov eax, ebx
call fcn.006173dc
mov byte [0x66baa0], al
push 0x1f4
push 0xf
mov ecx, 1
mov edx, 0x47e990
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66baa4], eax
push 0x1f4
push 0x19
mov ecx, 2
mov edx, 0x47e9a4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x66baa8], eax
cmp dword [0x66badc], 0x2656743
jg 0x47d934
mov ecx, 0x66bab0
mov edx, 0x47e9b8
mov eax, ebx
call fcn.006176ac
mov dword [0x66baac], eax
jmp 0x47d94a
mov ecx, 0x66bab0
mov edx, 0x47e9e0
mov eax, ebx
call fcn.006176ac
mov dword [0x66baac], eax
mov eax, dword [0x6694bc]
mov al, byte [eax]
mov byte [0x66bb26], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47d995
lea eax, [ebp - 0x68]
mov edx, 2
call fcn.00403298
lea eax, [ebp - 0x60]
mov edx, 2
call fcn.00403898
lea eax, [ebp - 0xc]
call fcn.00403880
lea eax, [ebp - 8]
call fcn.00403274
ret