Function at 0x48f780
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 0x491822
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x60]
mov eax, dword [0x672120]
mov eax, dword [eax]
call fcn.00658380
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00624e40
mov edx, dword [ebp - 0x5c]
mov eax, 0x675b1c
call fcn.004038bc
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 4]
cmp dword [0x675b14], 0x2656743
jg 0x48f7f8
mov edx, 0x491838
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x48f804
mov edx, 0x49184c
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov edx, 0x49185c
mov eax, ebx
call fcn.0061adcc
mov dword [0x675780], eax
mov ecx, dword [0x6688a8]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov dword [0x675784], eax
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x48f83d
or dword [0x675784], 1
mov ecx, 0x7fffffff
mov edx, 0x491880
mov eax, ebx
call fcn.0061adb8
mov dword [0x675788], eax
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x48f87f
mov eax, dword [0x49188c]
or eax, dword [0x675788]
mov dword [0x675788], eax
mov eax, dword [0x491890]
not eax
and eax, dword [0x67578c]
mov dword [0x67578c], eax
mov al, 2
call fcn.00633350
push 0x675791
push 0x675796
push 0x67579a
push 0
push 0x5f5f0303
push 0x4b4b0201
mov ecx, 0x675790
mov edx, 0x49189c
mov eax, ebx
call fcn.0061ade0
mov dword [0x675792], 0x675790
lea ecx, [ebp - 0x5c]
mov edx, 0x4918b0
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x67579e
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x4918c8
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 0x64]
call fcn.0053ce1c
mov dword [0x6757a2], eax
mov eax, dword [0x6757a2]
call fcn.0053ce4c
test al, al
jne 0x48f909
xor eax, eax
mov dword [0x6757a2], eax
call fcn.005093e8
mov edx, dword [eax + 0x198]
add edx, 0x60
push edx
mov edx, dword [eax + 0x1a0]
add edx, 0x60
push edx
push 0x6757a6
push 0x1010101
mov edx, dword [0x6718c0]
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, 0x4918e0
mov eax, ebx
call fcn.0061ade0
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x68]
mov edx, dword [0x671c6c]
mov edx, dword [edx]
call fcn.00403438
mov ecx, dword [ebp - 0x68]
mov edx, 0x4918f4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov edx, dword [ebp - 0x64]
mov eax, 0x6757aa
call fcn.004032c8
lea ecx, [ebp - 0x5c]
mov edx, 0x49190c
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757ae
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x491920
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757b2
call fcn.004038bc
push 0x6757b7
push 0
push 0
push 0
push 0xffff
push 0xffff
mov ecx, 0x6757b6
mov edx, 0x49193c
mov eax, ebx
call fcn.0061ade0
lea ecx, [ebp - 0x5c]
mov edx, 0x49194c
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757b8
call fcn.004038bc
push 0xffff
push 0x20
mov ecx, 0x20
mov edx, 0x491964
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757bc], eax
push 0x3e8
push 0xc8
mov ecx, 1
mov edx, 0x49197c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757c0], eax
mov ecx, 0xffff
mov edx, 0x491990
mov eax, ebx
call fcn.0061adb8
mov dword [0x6757c4], eax
mov ecx, 0xff
mov edx, 0x4919a4
mov eax, ebx
call fcn.0061adb8
mov dword [0x6757c8], eax
lea eax, [ebp - 0x5c]
push eax
mov ecx, 0x4919b0
mov edx, 0x4919c4
mov eax, ebx
call fcn.0061ae7c
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757cc
call fcn.004038bc
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x4919d8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757d0], eax
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x4919ec
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757d4], eax
push 0x7fffffff
push 0
xor ecx, ecx
mov edx, 0x491a00
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757d8], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x491a14
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757dc
call fcn.004038bc
xor ecx, ecx
mov edx, 0x491a28
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
inc eax
mov byte [0x6757e0], al
lea eax, [ebp - 0x5c]
push eax
mov ecx, 0x491a38
mov edx, 0x491a54
mov eax, ebx
call fcn.0061ae7c
mov edx, dword [ebp - 0x5c]
mov eax, 0x6757e1
call fcn.004038bc
push 0xffff
push 0xf081
mov ecx, 0x20
mov edx, 0x491a70
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757e5], eax
push 0x1f4
push 0x64
mov ecx, 0xa
mov edx, 0x491a8c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757e9], eax
push 4
push 2
xor ecx, ecx
mov edx, 0x491aa4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x6757ed], al
push 0xc
push 4
xor ecx, ecx
mov edx, 0x491ac0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x6757ee], al
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x48fbbc
mov al, byte [0x6757ee]
add al, 0xf6
sub al, 2
jae 0x48fbbc
mov byte [0x6757ee], 4
push 0x6757f7
push 0x6757fb
push 0
push 0x10101
push 0x3f3f3f
push 0x10205
mov ecx, 0x6757ef
mov edx, 0x491ad4
mov eax, ebx
call fcn.0061ade0
push 0x4000
push 5
mov ecx, 1
mov edx, 0x491ae4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757f3], eax
push 0xff
push 2
xor ecx, ecx
mov edx, 0x491afc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6757ff], eax
push 0xf4240
push 0x1f4
mov ecx, 0xa
mov edx, 0x491b18
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675803], eax
push 2
push 2
xor ecx, ecx
mov edx, 0x491b30
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675807], al
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [0x6688a0]
mov edx, 0x491b4c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov edx, dword [ebp - 0x64]
mov eax, 0x675808
call fcn.004032c8
push 8
push 0x6688ac
mov ecx, 0x67580c
mov edx, 0x491b5c
mov eax, ebx
call fcn.0061b114
lea ecx, [ebp - 0x5c]
mov edx, 0x491b74
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x675814
call fcn.004038bc
lea eax, [ebp - 0x64]
push eax
xor ecx, ecx
mov edx, 0x491b88
mov eax, ebx
call fcn.0061af9c
mov edx, dword [ebp - 0x64]
mov eax, 0x675818
call fcn.004032c8
lea ecx, [ebp - 0x60]
mov edx, 0x491ba0
mov eax, ebx
call fcn.0061af28
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.0061d20c
mov eax, dword [ebp - 0x5c]
call fcn.00650cb4
mov edx, dword [0x672ec8]
mov dword [edx], eax
mov eax, dword [0x672ec8]
mov eax, dword [eax]
mov dl, 1
call fcn.0065379c
cmp dword [0x675b14], 0x2656743
jg 0x48fd1c
mov edx, 0x49184c
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
push 4
push 0xffffffffffffffff
xor ecx, ecx
mov edx, 0x491bac
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67581c], al
cmp byte [0x67581c], 0xff
jne 0x48fd5f
mov byte [0x67581c], 1
mov eax, dword [0x6733cc]
mov eax, dword [eax]
mov edx, 0xd
call fcn.0065a010
cmp al, 0x30
jne 0x48fd5f
mov byte [0x67581c], 0
push 0x1e
push 0xa
xor ecx, ecx
mov edx, 0x491bc4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x67581d], eax
lea ecx, [ebp - 8]
mov edx, 0x491bd8
mov eax, ebx
call fcn.0061af0c
cmp dword [ebp - 8], 0
je 0x48fe5a
mov eax, dword [ebp - 8]
call fcn.0040351c
mov edx, eax
shr edx, 3
mov eax, dword [0x675821]
call fcn.00651e38
mov eax, dword [ebp - 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 8]
call fcn.0040351c
mov ecx, eax
mov eax, dword [0x675821]
mov edx, dword [eax + 0x1c]
lea eax, [ebp - 0x3c]
call fcn.0062fb58
mov eax, dword [0x675821]
call fcn.00652218
mov eax, dword [0x675821]
mov eax, dword [eax + 0x18]
dec eax
cmp eax, 0
jl 0x48fe11
mov dword [ebp - 0x3c], eax
mov eax, dword [0x675821]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x3c]
mov eax, dword [eax + edx*4]
cmp eax, 2
jl 0x48fdfb
cmp eax, 0x7d0
jle 0x48fe08
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x675821]
call fcn.006520e4
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x48fde1
mov eax, dword [0x675821]
mov eax, dword [eax + 0x18]
sub eax, 2
cmp eax, 0
jl 0x48fe5a
mov dword [ebp - 0x3c], eax
mov eax, dword [0x675821]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x3c]
mov eax, dword [eax + edx*4]
mov edx, dword [0x675821]
mov edx, dword [edx + 0x1c]
mov ecx, dword [ebp - 0x3c]
cmp eax, dword [edx + ecx*4 + 4]
jne 0x48fe51
mov edx, dword [ebp - 0x3c]
mov eax, dword [0x675821]
call fcn.006520e4
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x48fe24
mov eax, dword [0x675821]
cmp dword [eax + 0x18], 0
jne 0x48fe7a
mov edx, dword [0x672604]
mov ecx, 0x40
mov eax, dword [0x675821]
call fcn.00652010
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x60]
call fcn.00620cc4
mov ecx, dword [ebp - 0x60]
mov edx, 0x491bec
mov eax, ebx
call fcn.0061ae7c
mov edx, dword [ebp - 0x5c]
mov eax, 0x675825
call fcn.004038bc
push 0xffff
mov eax, dword [0x6718e0]
movzx eax, word [eax]
push eax
xor ecx, ecx
mov edx, 0x491bfc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov word [0x675829], ax
or word [0x675829], 0x20
test byte [0x675829], 0x80
jne 0x48fef2
test byte [0x675899], 0x10
je 0x48fee8
or dword [0x675898], 0x2000
and dword [0x675898], 0xffffefff
push 0x6759d5
push 0x6759d6
push 0
push 0
push 0x10401
push 0x10201
mov ecx, 0x6759d4
mov edx, 0x491c0c
mov eax, ebx
call fcn.0061ade0
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x48ff2e
mov byte [0x67582b], 0
jmp 0x48ff94
push 4
push 4
xor ecx, ecx
mov edx, 0x491c20
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67582b], al
mov eax, dword [0x671bc4]
cmp byte [eax], 0
je 0x48ff78
cmp byte [0x67582b], 4
sete al
and eax, 0x7f
mov edx, dword [0x672484]
mov al, byte [edx + eax]
push eax
mov eax, dword [0x671fc0]
mov eax, dword [eax]
push eax
mov eax, dword [eax]
call dword [eax + 0x88]
jmp 0x48ff94
mov al, byte [0x67582b]
add al, 0xfd
sub al, 2
jb 0x48ff8d
mov eax, dword [0x671f34]
cmp byte [eax], 0
jne 0x48ff94
mov byte [0x67582b], 0
push 2
push 0
xor ecx, ecx
mov edx, 0x491c34
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67582c], al
lea eax, [ebp - 0x5c]
push eax
lea eax, [ebp - 0x60]
call fcn.0048f514
mov ecx, dword [ebp - 0x60]
mov edx, 0x491c44
mov eax, ebx
call fcn.0061ae7c
mov eax, dword [ebp - 0x5c]
mov edx, 0x6759d8
call fcn.00548b84
lea ecx, [ebp - 0x5c]
mov edx, 0x491c50
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x6759ec
call fcn.004038bc
lea ecx, [ebp - 0x38]
mov edx, 0x491c64
mov eax, ebx
call fcn.0061b088
test byte [ebp - 0x38], 1
jne 0x490036
cmp dword [ebp - 0x38], 0
jle 0x490036
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 0x490030
mov edx, dword [ebp - 0x38]
mov dl, byte [eax + edx + 1]
xor ecx, ecx
mov cl, byte [ebp - 0x3c]
mov byte [ecx + 0x67582d], dl
cmp dword [ebp - 0x38], 0
jg 0x49000a
call fcn.00401fac
lea ecx, [ebp - 0x68]
mov edx, 0x491c74
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov edx, dword [ebp - 0x64]
mov eax, dword [0x672304]
mov eax, dword [eax]
call fcn.006529a8
lea ecx, [ebp - 0x68]
mov edx, 0x491c84
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov edx, dword [ebp - 0x64]
mov eax, dword [0x672ab4]
mov eax, dword [eax]
call fcn.006529a8
cmp dword [0x675b14], 0x2656743
jg 0x4900cd
lea eax, [ebp - 0x68]
push eax
mov ecx, 0x491c94
mov edx, 0x491cc8
mov eax, ebx
call fcn.0061af9c
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov edx, dword [ebp - 0x64]
mov eax, dword [0x67279c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
call fcn.006529a8
jmp 0x4900ff
lea eax, [ebp - 0x68]
push eax
mov ecx, 0x491c94
mov edx, 0x491cdc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov edx, dword [ebp - 0x64]
mov eax, dword [0x67279c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
call fcn.006529a8
mov eax, dword [0x67279c]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dl, 1
call fcn.0065379c
lea eax, [ebp - 0x68]
push eax
xor ecx, ecx
mov edx, 0x491cf0
mov eax, ebx
call fcn.0061af9c
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov eax, dword [ebp - 0x64]
push eax
call fcn.00466dc0
mov eax, dword [eax + 0x2c]
pop edx
call fcn.006529a8
push ebp
xor edx, edx
mov eax, dword [0x675af0]
call fcn.0048f5a0
pop ecx
push ebp
mov dl, 1
mov eax, dword [0x675af4]
call fcn.0048f5a0
pop ecx
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x490195
call fcn.004a7fa0
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 4]
mov ecx, 0x491d04
call fcn.004a2f84
call fcn.004a7fa0
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 4]
mov ecx, 0x491d18
call fcn.004a2f84
mov edx, 0x491d30
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea ecx, [ebp - 0x64]
mov edx, 0x491d48
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 0x64]
call fcn.0053ce1c
mov dword [0x675970], eax
mov eax, dword [0x675970]
call fcn.0053ce4c
test al, al
jne 0x4901d2
xor eax, eax
mov dword [0x675970], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov edi, dword [0x672998]
mov esi, dword [0x672068]
mov dword [ebp - 0x58], 0x675974
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [edi]
mov edx, dword [0x672098]
mov ecx, dword [edx + eax*4]
lea eax, [ebp - 0x64]
mov edx, 0x491d5c
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.0061ae7c
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 0x4901ea
cmp dword [0x675b14], 0x2656743
jg 0x490257
mov edx, 0x491d70
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x490263
mov edx, 0x491d8c
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea edx, [ebp - 0x60]
mov eax, dword [0x672580]
mov eax, dword [eax]
call fcn.00658380
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00624e40
mov edx, dword [ebp - 0x5c]
mov eax, 0x6759f0
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x491da0
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x6759f4
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x491db8
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x6759f8
call fcn.004038bc
lea ecx, [ebp - 0x60]
mov edx, 0x491dcc
mov eax, ebx
call fcn.0061af28
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.0061d20c
mov edx, dword [ebp - 0x5c]
mov eax, 0x6759fc
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x491de0
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, 0x675a00
call fcn.004032c8
push 0x675a20
push 0x675a21
push 0
push 0
push 0x10501
push 0x500
mov ecx, 0x675a22
mov edx, 0x491870
mov eax, ebx
call fcn.0061ade0
lea ecx, [ebp - 0x5c]
mov edx, 0x491df4
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x675a04
call fcn.004038bc
push 0x7bc0
push 0x2490
mov ecx, 0x5a0
mov edx, 0x491e04
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a08], eax
push 0x7bc0
push 0x1464
mov ecx, 0x5a0
mov edx, 0x491e14
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a0c], eax
push 0x1f40
push 0xfa0
xor ecx, ecx
mov edx, 0x491e24
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a10], eax
push 0x1f40
push 0x1388
mov ecx, 0xfa0
mov edx, 0x491e34
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a14], eax
push 0x1f40
push 0x3e8
xor ecx, ecx
mov edx, 0x491e44
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a18], eax
push 0x7d0
push 0x3e8
xor ecx, ecx
mov edx, 0x491e54
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a1c], eax
lea ecx, [ebp - 0x64]
mov edx, 0x491e64
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, 0x675a24
call fcn.004032c8
mov edx, 0x491e78
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov al, 5
call fcn.0061fd9c
test al, al
je 0x49043a
mov byte [ebp - 0x11], 2
jmp 0x490464
push 2
push 2
xor ecx, ecx
mov edx, 0x491e88
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 1
je 0x490460
mov al, 4
call fcn.0061fd9c
test al, al
je 0x490464
mov byte [ebp - 0x11], 0
mov eax, dword [0x671bc8]
mov eax, dword [eax]
mov ecx, 6
cdq
idiv ecx
mov dword [ebp - 0x30], eax
mov eax, dword [0x671b50]
mov eax, dword [eax]
mov ecx, 6
cdq
idiv ecx
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x68]
call fcn.0048f46c
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x491e98
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x30]
mov eax, ebx
call fcn.0061adb8
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x68]
call fcn.0048f46c
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x491ea4
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x34]
mov eax, ebx
call fcn.0061adb8
mov dword [ebp - 0x18], eax
mov eax, dword [0x671bc8]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x30]
shl eax, 2
push eax
lea eax, [ebp - 0x68]
call fcn.0048f46c
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x491eb0
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [0x671fe0]
mov ecx, dword [ecx]
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov esi, eax
mov eax, dword [0x671b50]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x34]
shl eax, 2
push eax
lea eax, [ebp - 0x68]
call fcn.0048f46c
mov ecx, dword [ebp - 0x68]
lea eax, [ebp - 0x64]
mov edx, 0x491ebc
call fcn.00403568
mov edx, dword [ebp - 0x64]
mov ecx, dword [0x671f70]
mov ecx, dword [ecx]
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov dword [ebp - 0x2c], eax
call fcn.005093e8
mov dword [ebp - 0x48], eax
xor edx, edx
mov eax, dword [ebp - 0x48]
call fcn.0063e824
call fcn.0065179c
mov edi, eax
push edi
push 0x48f4b4
push 0
push 0
mov eax, dword [0x672688]
mov eax, dword [eax]
call eax
mov byte [ebp - 0x41], 1
mov eax, dword [edi + 8]
test eax, eax
jns 0x490589
add eax, 0xf
sar eax, 4
dec eax
cmp eax, 0
jl 0x4905e1
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.00650bf0
lea edx, [ebp - 0x78]
mov eax, dword [edi + 4]
mov ecx, dword [ebp - 0x3c]
shl ecx, 4
add eax, ecx
call fcn.0061c280
test al, al
je 0x4905d8
mov byte [ebp - 0x41], 0
jmp 0x4905e1
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x490595
mov eax, edi
call fcn.004028c0
cmp byte [ebp - 0x41], 0
je 0x49060c
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 0x49061f
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.0063e824
mov edx, 0x491ec8
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov cl, 1
mov edx, 0x491ee0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x675988], al
inc dword [0x67598c]
test byte [0x675787], 4
je 0x490672
push 0x63
push 1
mov ecx, 1
mov edx, 0x491ef4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x67598c], eax
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x4906aa
push 2
push 0
xor ecx, ecx
mov edx, 0x491f0c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675990], al
push 2
push 2
xor ecx, ecx
mov edx, 0x491f20
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675991], al
mov edx, 0x491f34
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
push 0x1f4
push 0x64
mov ecx, 0xa
mov edx, 0x491f44
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 8], eax
push 4
push 4
xor ecx, ecx
mov edx, 0x491f54
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 4]
mov byte [edx + 0xc], al
mov eax, dword [ebp - 4]
lea esi, [eax + 0x1d]
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 + 4]
mov edx, 0x491f68
call fcn.0061ade0
push 6
push 3
xor ecx, ecx
mov edx, 0x491f78
mov eax, ebx
mov edi, dword [eax]
call dword [edi + 0xc]
mov byte [esi + 4], al
cmp dword [0x675b14], 0x2656743
jg 0x49074b
mov edx, 0x491f8c
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
jmp 0x490757
mov edx, 0x491fac
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
call fcn.00601830
mov dword [ebp - 0x4c], eax
push 1
push 0
xor ecx, ecx
mov edx, 0x491fc0
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, 0x491fd0
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], 0x668890
mov esi, 0x668898
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x1b4]
mov dword [ebp - 0x20], eax
cmp byte [ebp - 0x25], 0
jne 0x4907c6
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x1a8]
mov dword [ebp - 0x20], eax
call fcn.00650ca0
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 0x49082f
inc edi
mov dword [ebp - 0x3c], 0
lea ecx, [ebp - 0x64]
mov edx, dword [ebp - 0x3c]
mov eax, dword [esi]
call fcn.006592b4
mov edx, dword [ebp - 0x64]
lea ecx, [ebp - 0xc]
mov eax, ebx
call fcn.0061af28
cmp dword [ebp - 0xc], 0
je 0x490829
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 0x4907fe
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 0x4907a8
mov edx, 0x491fe8
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6688b4]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov dword [0x675860], eax
cmp dword [0x675780], 0
jne 0x4908ae
mov eax, dword [0x671bc8]
mov eax, dword [eax]
add eax, eax
lea eax, [eax + eax*4]
mov edx, dword [0x671b50]
mov ecx, dword [edx]
cdq
idiv ecx
cmp eax, 0xe
jle 0x4908ae
or dword [0x675860], 0x1000
push 2
push 2
xor ecx, ecx
mov edx, 0x491ff8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675864], al
push 0x675869
push 0x67586a
push 0
push 0
push 0x20102
push 1
mov ecx, 0x675868
mov edx, 0x491d04
mov eax, ebx
call fcn.0061ade0
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x49090c
cmp byte [0x675868], 2
jne 0x490905
mov byte [0x675868], 1
mov byte [0x67586a], 0
push 0x67586c
push 0x675871
push 0
push 0x10000
push 0x50401
push 0x10201
mov ecx, 0x67586b
mov edx, 0x49200c
mov eax, ebx
call fcn.0061ade0
mov eax, dword [0x671bc8]
mov eax, dword [eax]
mov ecx, 3
cdq
idiv ecx
push eax
mov eax, dword [0x673188]
mov eax, dword [eax]
add eax, eax
push eax
mov ecx, dword [0x673188]
mov ecx, dword [ecx]
mov edx, 0x49201c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x67586d], eax
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x490983
mov eax, dword [0x67286c]
mov eax, dword [eax]
mov dword [0x675876], eax
jmp 0x4909bc
mov ecx, dword [0x6726f4]
mov ecx, dword [ecx]
mov edx, 0x492030
mov eax, ebx
call fcn.0061adb8
mov dword [0x675876], eax
cmp dword [0x675b14], 0x2670938
jge 0x4909b2
or dword [0x675876], 0x80000
or dword [0x675876], 0x100000
cmp dword [0x675b14], 0x2656743
jg 0x490a02
mov cl, 1
mov edx, 0x492044
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x67587a], al
mov eax, dword [0x6722fc]
movzx eax, byte [eax]
mov edx, 2
sub edx, eax
push edx
push 0
xor ecx, ecx
mov edx, 0x49205c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67587b], al
jmp 0x490a36
push 0x67587b
push 0
push 0
push 0
mov eax, dword [0x6722fc]
movzx eax, byte [eax]
mov edx, 2
sub edx, eax
shl edx, 8
or edx, 1
push edx
push 1
mov ecx, 0x67587a
mov edx, 0x492044
mov eax, ebx
call fcn.0061ade0
mov edx, 0x49206c
mov eax, ebx
call fcn.0061adcc
mov edx, 0x67587c
mov dword [edx], eax
mov edx, 0x49207c
mov eax, ebx
call fcn.0061adcc
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
and eax, 0xffff
call fcn.00516afc
mov byte [0x675880], al
mov eax, dword [ebp - 0x3c]
shr eax, 0x10
call fcn.00516afc
mov byte [0x675881], al
mov eax, dword [0x6722fc]
cmp byte [eax], 0
je 0x490a95
mov ax, word [0x492084]
mov word [0x675882], ax
jmp 0x490b27
mov edx, 0x492090
mov eax, ebx
call fcn.0061adcc
mov esi, eax
mov ax, word [0x49209c]
mov word [0x675882], ax
mov dword [ebp - 0x3c], 0xa
mov al, byte [ebp - 0x3c]
cmp al, 0xf
ja 0x490ac3
and eax, 0x7f
bt esi, eax
jae 0x490adb
mov eax, dword [ebp - 0x3c]
call fcn.00516afc
cmp al, 0xf
ja 0x490adb
and eax, 0x7f
bts dword [0x675882], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x490ab6
mov edx, 0x4920a8
mov eax, ebx
call fcn.0061adcc
mov esi, eax
mov dword [ebp - 0x3c], 0xa
mov al, byte [ebp - 0x3c]
cmp al, 0xf
ja 0x490b06
and eax, 0x7f
bt esi, eax
jae 0x490b1e
mov eax, dword [ebp - 0x3c]
call fcn.00516afc
cmp al, 0xf
ja 0x490b1e
and eax, 0x7f
bts dword [0x675884], eax
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x490af9
call fcn.0048e31c
push 8
push 8
xor ecx, ecx
mov edx, 0x4920b8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675886], eax
push 3
push 3
xor ecx, ecx
mov edx, 0x4920cc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67588a], al
mov ecx, 0x80
mov edx, 0x4920e0
mov eax, ebx
call fcn.0061adb8
mov byte [0x67588b], al
push 0x1f4
push 0
mov ecx, 0xfffffffc
mov edx, 0x4920f0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x67588c], eax
cmp dword [0x67588c], 0
jle 0x490ba6
cmp dword [0x67588c], 0xa
jge 0x490ba6
xor eax, eax
mov dword [0x67588c], eax
movzx ecx, word [0x6688a4]
mov edx, 0x492100
mov eax, ebx
call fcn.0061adb8
mov word [0x675890], ax
mov eax, 0x48
call fcn.0064f39c
mov ecx, eax
mov edx, 0x492114
mov eax, ebx
call fcn.0061adb8
mov edx, dword [0x671b50]
mov edx, dword [edx]
call fcn.00656b70
mov dword [0x675892], eax
cmp dword [0x675892], 0
jle 0x490c02
cmp dword [0x675892], 0x10
jge 0x490c02
xor eax, eax
mov dword [0x675892], eax
mov eax, dword [ebp - 4]
add eax, 0x18
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 + 4]
mov edx, 0x491f68
call fcn.0061ade0
mov eax, dword [ebp - 4]
lea edx, [eax + 0x18]
mov eax, dword [ebp - 4]
call fcn.00492840
mov edx, 0x492128
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6688b8]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov dword [0x675898], eax
test byte [0x675898], 1
setne al
neg al
sbb eax, eax
push eax
mov eax, dword [0x672b78]
mov eax, dword [eax]
push eax
call sub.shell32.dll_DragAcceptFiles
mov eax, 0x6758a0
call fcn.005471b8
mov edx, 0x492138
mov eax, ebx
call fcn.0061adcc
mov dword [0x6758b8], eax
mov ecx, 0xff0000
mov edx, 0x49214c
mov eax, ebx
call fcn.0061adb8
mov dword [0x6758dc], eax
push 0x14
push 2
mov ecx, 1
mov edx, 0x492160
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x6758fc], eax
push 0x675904
push 0x67590c
push 0x675914
push 0
push 0x91414ff
push 0x1050000
mov ecx, 0x675900
mov edx, 0x492184
mov eax, ebx
call fcn.0061ade0
mov edx, 0x492198
mov eax, ebx
call fcn.0061adcc
mov dword [0x675908], eax
mov ecx, 0xff
mov edx, 0x4921ac
mov eax, ebx
call fcn.0061adb8
mov dword [0x675910], eax
mov ecx, 0xff00
mov edx, 0x4921c0
mov eax, ebx
call fcn.0061adb8
mov dword [0x675918], eax
push 2
push 0
xor ecx, ecx
mov edx, 0x4921d4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x67591c], al
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x490d84
mov edx, 0x4921e4
mov eax, ebx
call fcn.0061adcc
mov byte [0x67591d], al
mov al, byte [0x4921f0]
and al, byte [0x67591d]
mov dl, byte [0x4921f0]
cmp dl, al
jne 0x490d84
mov al, byte [0x49209c]
mov byte [0x67591d], al
mov dword [0x675920], 0x2d0
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x490db5
push 0x3de0
push 0x2d0
xor ecx, ecx
mov edx, 0x4921fc
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675920], eax
mov edx, 0x492214
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov ecx, dword [0x6688bc]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov dword [0x675924], eax
test byte [0x675924], 0x40
je 0x490e51
call fcn.0053c3b0
mov dword [ebp - 0x50], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x492228
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
add eax, 0xc
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x492240
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x50]
add eax, 0x10
call fcn.004038bc
lea ecx, [ebp - 8]
mov edx, 0x492260
mov eax, ebx
call fcn.0061af0c
cmp dword [ebp - 8], 0
je 0x490e51
lea edx, [ebp - 0x64]
mov eax, dword [ebp - 8]
call fcn.0061d1d8
mov eax, dword [ebp - 0x64]
call fcn.00650c30
mov edx, dword [ebp - 0x50]
mov dword [edx + 0x14], eax
lea ecx, [ebp - 0x68]
mov edx, 0x492278
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x64]
call fcn.0061d1d8
mov edx, dword [ebp - 0x64]
mov eax, dword [0x675b24]
call fcn.006529a8
lea ecx, [ebp - 0x5c]
mov edx, 0x492288
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x675b20
call fcn.004038bc
cmp dword [0x675b20], 0
jne 0x490ec4
lea edx, [ebp - 0x60]
mov eax, dword [0x673264]
mov eax, dword [eax]
call fcn.00658380
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00624e40
mov edx, dword [ebp - 0x5c]
mov eax, 0x675b20
call fcn.004038bc
push 0
mov eax, dword [0x675b20]
push eax
call sub.kernel32.dll_CreateDirectoryW
push 9
push 5
xor ecx, ecx
mov edx, 0x4922a0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675928], eax
push 0x10
push 2
xor ecx, ecx
mov edx, 0x4922b8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x67592c], eax
push 0xe42
push 0x78
mov ecx, 1
mov edx, 0x4922d0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675930], eax
push 0x78
push 3
xor ecx, ecx
mov edx, 0x4922f0
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675934], eax
push 3
push 0
xor ecx, ecx
mov edx, 0x492304
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675938], al
push 5
push 2
xor ecx, ecx
mov edx, 0x49231c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675941], al
xor eax, eax
mov dword [ebp - 0x3c], eax
mov esi, 0x6688c0
mov eax, dword [ebp - 0x3c]
sub eax, 1
jb 0x490f7a
je 0x490f83
dec eax
je 0x490f8c
jmp 0x490f95
mov dword [ebp - 0x10], 0x675942
jmp 0x490f9c
mov dword [ebp - 0x10], 0x675946
jmp 0x490f9c
mov dword [ebp - 0x10], 0x67594a
jmp 0x490f9c
mov dword [ebp - 0x10], 0x67594e
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, 0x492334
call fcn.00403568
mov edx, dword [ebp - 0x68]
mov ecx, 0x492348
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 0x490f6b
push 2
push 1
xor ecx, ecx
mov edx, 0x492354
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675952], al
lea ecx, [ebp - 0x5c]
mov edx, 0x49236c
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x675953
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x492384
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, 0x675957
call fcn.004032c8
cmp dword [0x675957], 0
jne 0x491045
mov eax, 0x675957
mov edx, 0x4923a0
call fcn.004032c8
lea ecx, [ebp - 0x5c]
mov edx, 0x4923b0
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x67595b
call fcn.004038bc
lea ecx, [ebp - 0x64]
mov edx, 0x4923cc
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, 0x67595f
call fcn.004032c8
push 0xb
push 0xffffffffffffffff
or ecx, 0xffffffff
mov edx, 0x4923e4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675963], eax
push 3
push 0
xor ecx, ecx
mov edx, 0x4923f8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov byte [0x675967], al
cmp dword [0x675b14], 0x2656743
jg 0x491123
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x49240c
mov eax, dword [0x675b28]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x492424
mov eax, dword [0x675b2c]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x492444
mov eax, dword [0x675b30]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x492458
mov eax, dword [0x675b34]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x492470
mov eax, dword [0x675b38]
call fcn.0061bd58
jmp 0x49118c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x49248c
mov eax, dword [0x675b28]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x4924a0
mov eax, dword [0x675b2c]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x492444
mov eax, dword [0x675b30]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x4924b4
mov eax, dword [0x675b34]
call fcn.0061bd58
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 4]
mov edx, 0x4924c8
mov eax, dword [0x675b38]
call fcn.0061bd58
mov edx, 0x4924dc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6688c4]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov byte [0x675a38], al
lea ecx, [ebp - 0x64]
mov edx, 0x4924ec
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, 0x675a3c
call fcn.004032c8
push 0x7fffffff
push 0x7fffffff
mov ecx, 4
mov edx, 0x492504
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675a40], eax
cmp dword [0x675a40], 0x7fffffff
je 0x491215
cmp dword [0x675a40], 0x40
jle 0x49120e
mov dword [0x675a40], 0x40
jmp 0x491215
and dword [0x675a40], 0xfffffffc
mov edx, 0x492518
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov eax, dword [0x6722fc]
cmp byte [eax], 0
jne 0x4913af
cmp dword [0x675b14], 0x2670938
jge 0x4912d0
call fcn.004a7fa0
call fcn.004a5748
mov eax, dword [eax + 0x9c]
mov edx, dword [0x675a5c]
mov dword [edx + 4], eax
lea ecx, [ebp - 0x64]
mov edx, 0x49252c
mov eax, ebx
call fcn.0061af0c
mov edx, dword [ebp - 0x64]
mov eax, dword [0x675a5c]
mov eax, dword [eax + 8]
call fcn.00627c68
mov eax, dword [0x675a5c]
mov eax, dword [eax + 4]
mov edx, dword [0x675b3c]
cmp eax, dword [edx + 4]
jne 0x4912c4
mov eax, dword [0x675b3c]
mov edx, dword [eax + 8]
mov eax, dword [0x675a5c]
mov eax, dword [eax + 8]
call fcn.0048e600
test al, al
je 0x4912c4
mov edx, dword [0x675b44]
mov eax, dword [0x675a5c]
call fcn.0048e680
mov eax, dword [0x67237c]
mov al, byte [eax]
mov byte [0x675a61], al
jmp 0x4913af
mov byte [0x675a60], 2
jmp 0x4913af
xor eax, eax
mov dword [ebp - 0x3c], eax
xor eax, eax
mov al, byte [ebp - 0x3c]
mov eax, dword [eax*4 + 0x675a54]
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x64]
mov eax, 0x492534
mov edx, dword [ebp - 0x3c]
call fcn.006592b4
mov edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x54]
mov ecx, dword [eax + 4]
mov eax, ebx
call fcn.0061adb8
mov edx, dword [ebp - 0x54]
mov dword [edx + 4], eax
lea eax, [ebp - 8]
push eax
lea ecx, [ebp - 0x64]
mov eax, 0x492540
mov edx, dword [ebp - 0x3c]
call fcn.006592b4
mov edx, dword [ebp - 0x64]
mov ecx, 0x492554
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0x10]
mov eax, dword [ebp - 8]
mov edx, 0x492554
call fcn.0040362c
je 0x49134a
mov eax, dword [ebp - 0x54]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 8]
call fcn.00627c68
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 3
jne 0x4912d5
push 0x675a61
push 0
push 0
push 0
push 0x102
mov eax, dword [0x67237c]
movzx eax, byte [eax]
shl eax, 8
or eax, 0
push eax
mov ecx, 0x675a60
mov edx, 0x492560
mov eax, ebx
call fcn.0061ade0
cmp byte [0x675a61], 0
je 0x4913af
mov eax, dword [0x67237c]
cmp byte [eax], 0
je 0x4913af
call fcn.0048e404
test al, al
je 0x4913a8
mov byte [0x675a60], 1
jmp 0x4913af
mov byte [0x675a60], 0
xor eax, eax
mov al, byte [0x675a60]
mov eax, dword [eax*4 + 0x675a54]
call fcn.0048e6c8
lea ecx, [ebp - 8]
mov edx, 0x492574
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 8]
call fcn.0040351c
dec eax
je 0x491448
cmp dword [ebp - 8], 0
je 0x4913fa
mov eax, dword [ebp - 8]
call fcn.0040351c
and eax, 0x80000007
jns 0x4913f6
dec eax
or eax, 0xfffffff8
inc eax
test eax, eax
je 0x491411
mov edx, dword [0x671e60]
mov ecx, 0x120
mov eax, dword [0x675a64]
call fcn.00652010
jmp 0x491448
mov eax, dword [ebp - 8]
call fcn.0040351c
mov edx, eax
shr edx, 3
mov eax, dword [0x675a64]
call fcn.00651e38
mov eax, dword [ebp - 8]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 8]
call fcn.0040351c
mov ecx, eax
mov eax, dword [0x675a64]
mov edx, dword [eax + 0x1c]
lea eax, [ebp - 0x3c]
call fcn.0062fb58
mov ecx, 0xff000000
xor edx, edx
mov eax, dword [0x675a64]
call fcn.006520a4
mov edx, 0x492584
mov eax, ebx
call fcn.0061adcc
mov dword [0x675a68], eax
mov eax, 0x675a6c
mov ecx, 0xff
mov edx, 0x40
call fcn.00402694
lea ecx, [ebp - 8]
mov edx, 0x492598
mov eax, ebx
call fcn.0061af0c
mov eax, dword [ebp - 8]
call fcn.0040351c
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jle 0x4914c3
test byte [ebp - 0x3c], 1
jne 0x4914c3
cmp dword [ebp - 0x3c], 0x80
jg 0x4914c3
mov eax, dword [ebp - 8]
mov dword [ebp - 0x40], eax
mov edx, 0x675a6c
lea eax, [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
call fcn.0062fb58
mov edx, 0x4925b0
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
movzx ecx, word [0x6688c8]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov word [0x675aac], ax
xor ecx, ecx
mov cl, byte [0x6688cc]
mov edx, 0x4925c4
mov eax, ebx
call fcn.0061adb8
mov byte [0x675aae], al
lea eax, [ebp - 0xc]
push eax
mov ecx, 0x4925d4
mov edx, 0x4925e0
mov eax, ebx
call fcn.0061ae7c
lea eax, [ebp - 0x178]
mov edx, dword [ebp - 0xc]
mov ecx, 0xff
call fcn.00403a44
lea eax, [ebp - 0x178]
mov edx, 0x4925ec
xor ecx, ecx
mov cl, byte [eax]
inc ecx
call fcn.00402624
jne 0x491551
mov edx, 0x4925f0
mov eax, dword [0x675ab0]
call fcn.00652a4c
jmp 0x491569
lea edx, [ebp - 0x5c]
mov eax, dword [ebp - 0xc]
call fcn.0061d20c
mov edx, dword [ebp - 0x5c]
mov eax, dword [0x675ab0]
call fcn.00652a9c
mov edx, 0x492688
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov cl, 1
mov edx, 0x49269c
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 8]
mov byte [0x675ab8], al
mov ecx, 0x80000000
mov edx, 0x4926ac
mov eax, ebx
call fcn.0061adb8
mov dword [0x675abc], eax
lea ecx, [ebp - 0x5c]
mov edx, 0x4926bc
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x675ac0
call fcn.004038bc
mov edx, 0x4926cc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6688d0]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov byte [0x675ac4], al
lea edx, [ebp - 0x60]
mov eax, 0x4926d4
call fcn.00658380
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.00624e40
mov edx, dword [ebp - 0x5c]
mov eax, 0x675ac8
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x4926ec
mov eax, ebx
call fcn.0061af44
mov edx, dword [ebp - 0x5c]
mov eax, 0x675acc
call fcn.004038bc
lea ecx, [ebp - 0x5c]
mov edx, 0x492700
mov eax, ebx
call fcn.0061af28
mov edx, dword [ebp - 0x5c]
mov eax, 0x675ad0
call fcn.004038bc
lea eax, [ebp - 0x5c]
push eax
lea edx, [ebp - 0x60]
mov eax, 0x49271c
call fcn.00658380
mov ecx, dword [ebp - 0x60]
mov edx, 0x49272c
mov eax, ebx
call fcn.0061ae7c
mov edx, dword [ebp - 0x5c]
mov eax, 0x675ad4
call fcn.004038bc
mov edx, 0x492750
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
mov eax, dword [0x675af8]
add eax, 0x21
push eax
push 0
push 0
push 0
push 0x104
push 0
mov eax, dword [0x675af8]
lea ecx, [eax + 0x20]
mov edx, 0x491870
mov eax, ebx
call fcn.0061ade0
mov edx, 0x492764
mov eax, ebx
call fcn.0061adcc
dec eax
cmp eax, 0
jl 0x491745
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x64]
mov eax, 0x49276c
mov edx, dword [ebp - 0x3c]
call fcn.006592b4
mov edx, dword [ebp - 0x64]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
or ecx, 0xffffffff
mov edx, 0x492780
mov eax, ebx
call fcn.0061adb8
push eax
or ecx, 0xffffffff
mov edx, 0x492794
mov eax, ebx
call fcn.0061adb8
push eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x60]
mov edx, 0x4927a8
mov eax, ebx
call fcn.0061af28
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.0061d20c
mov eax, dword [ebp - 0x5c]
push eax
mov edx, 0x4927bc
mov eax, ebx
call fcn.0061adcc
mov ecx, eax
mov dl, 1
mov eax, dword [0x48df7c]
call fcn.0048ec30
mov edx, eax
mov eax, dword [0x675af8]
call fcn.00652038
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffff
jne 0x4916b8
mov edx, 0x4927cc
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
xor ecx, ecx
mov cl, byte [0x6688d4]
mov edx, 0x491870
mov eax, ebx
call fcn.0061adb8
mov byte [0x675ad8], al
push 0x1f4
push 0xf
mov ecx, 1
mov edx, 0x4927e4
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675adc], eax
push 0x1f4
push 0x19
mov ecx, 2
mov edx, 0x4927f8
mov eax, ebx
mov esi, dword [eax]
call dword [esi + 0xc]
mov dword [0x675ae0], eax
cmp dword [0x675b14], 0x2656743
jg 0x4917c8
mov ecx, 0x675ae8
mov edx, 0x49280c
mov eax, ebx
call fcn.0061b088
mov dword [0x675ae4], eax
jmp 0x4917de
mov ecx, 0x675ae8
mov edx, 0x492834
mov eax, ebx
call fcn.0061b088
mov dword [0x675ae4], eax
mov eax, dword [0x6722fc]
mov al, byte [eax]
mov byte [0x675b5e], al
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x491829
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