Function at 0x4db660
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4fbdf6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x55c
push ebx
push esi
push edi
push 0xa
lea ecx, [esp + 0x18]
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
call fcn.004a0474
mov edi, 0x50142c
mov esi, 0x5013c8
mov dword [esp + 0x14], edi
mov dword [esp + 0x30], esi
xor ebx, ebx
push 0xa
lea ecx, [esp + 0x38]
mov dword [esp + 0x574], ebx
call fcn.004a0474
mov dword [esp + 0x34], edi
mov dword [esp + 0x50], esi
mov esi, dword [ebp + 0xc]
mov byte [esp + 0x570], 1
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], 0xbff00000
mov eax, dword [esi]
cmp eax, 2
jne 0x4db7fa
call dword [0x4ff8c0]
mov eax, dword [0x5378a0]
cmp eax, ebx
jne 0x4db746
mov eax, dword [0x53787c]
mov ecx, dword [0x537878]
push eax
push ecx
sub esp, 0x18
mov ecx, 6
mov esi, 0x5378a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
jmp 0x4db7a9
cmp eax, 1
jne 0x4db773
mov edx, dword [0x53787c]
mov eax, dword [0x537878]
push edx
push eax
sub esp, 0x18
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
jmp 0x4db7a9
cmp eax, 2
jne 0x4db7a9
mov ecx, dword [0x5378f4]
mov esi, 0x5378a8
push ecx
mov ecx, 6
sub esp, 0x18
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da170
add esp, 0x34
call dword [0x4ff8d0]
mov edx, dword [0x500628]
mov dword [edx], 1
lea ecx, [esp + 0x34]
mov byte [esp + 0x570], 0
call fcn.004a0480
lea ecx, [esp + 0x14]
mov dword [esp + 0x570], 0xffffffff
call fcn.004a0480
mov eax, 0x3ef
mov ecx, dword [esp + 0x568]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp eax, 1
jne 0x4db9b0
call dword [0x4ff8c0]
mov eax, dword [0x500628]
cmp dword [eax], 1
jne 0x4db81a
mov dword [eax], ebx
jmp 0x4db8ae
mov eax, dword [0x5378a0]
cmp eax, ebx
jne 0x4db84b
mov eax, dword [0x53787c]
mov ecx, dword [0x537878]
push eax
push ecx
sub esp, 0x18
mov ecx, 6
mov esi, 0x5378a8
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
jmp 0x4db8ae
cmp eax, 1
jne 0x4db878
mov edx, dword [0x53787c]
mov eax, dword [0x537878]
push edx
push eax
sub esp, 0x18
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
jmp 0x4db8ae
cmp eax, 2
jne 0x4db8b3
mov ecx, dword [0x5378f4]
mov esi, 0x5378a8
push ecx
mov ecx, 6
sub esp, 0x18
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da170
add esp, 0x34
mov eax, dword [0x5378a0]
mov edx, dword [0x500ba0]
mov ecx, 6
mov esi, edx
mov edi, 0x5378a8
cmp eax, ebx
rep movsd dword es:[edi], dword [esi]
jne 0x4db8f9
mov eax, dword [0x53787c]
mov ecx, dword [0x537878]
push eax
push ecx
sub esp, 0x18
mov ecx, 6
mov esi, edx
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
call dword [0x4ff8d0]
jmp case.default.0x4db9ce
cmp eax, 1
jne 0x4db973
mov edx, dword [0x5378b4]
mov eax, dword [0x5378b0]
mov ecx, dword [0x5378ac]
push edx
mov edx, dword [0x5378a8]
push eax
mov eax, dword [0x5378cc]
push ecx
mov ecx, dword [0x5378c8]
push edx
mov edx, dword [0x5378c4]
push eax
mov eax, dword [0x5378c0]
push ecx
push edx
push eax
call fcn.0041ab80
fstp qword [0x537878]
mov ecx, dword [0x53787c]
mov edx, dword [0x537878]
add esp, 0x20
mov esi, 0x5378c0
push ecx
push edx
sub esp, 0x18
mov ecx, 6
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004d9610
add esp, 0x20
call dword [0x4ff8d0]
jmp case.default.0x4db9ce
cmp eax, 2
jne 0x4db9a5
mov eax, dword [0x5378f4]
mov ecx, 6
push eax
mov esi, edx
sub esp, 0x18
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004da170
add esp, 0x34
call dword [0x4ff8d0]
jmp case.default.0x4db9ce
cmp eax, 3
jne 0x4db9c0
call dword [0x500cac]
jmp 0x4dc7ef
mov eax, dword [ebp + 8]
mov eax, dword [eax]
cmp eax, 3
ja case.default.0x4db9ce
jmp dword [eax*4 + 0x4dccc0]
mov esi, dword [0x5002e0]
mov edi, dword [0x5002c0]
mov ecx, 0x18
mov ebx, dword [0x4ff8ec]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x5002d0]
mov eax, dword [0x4ffed4]
push 0x537850
push 0x3c
mov edx, dword [ecx]
mov ecx, dword [eax]
mov dword [esp + 0x18], edx
mov edx, dword [ecx + 0xa0]
mov ecx, dword [ecx + 0xa4]
mov dword [0x537878], edx
mov dword [0x53787c], ecx
mov edx, dword [eax]
push edx
call ebx
mov eax, dword [0x5002e0]
mov ecx, dword [0x4ffed4]
add eax, 0xc
xor edi, edi
mov edx, dword [ecx]
push eax
push edi
push edx
call ebx
mov eax, dword [0x5002e0]
mov ecx, dword [0x4ffed4]
add eax, 0x17
mov edx, dword [ecx]
push eax
push 1
push edx
call ebx
mov eax, dword [0x5002e0]
mov ecx, dword [0x4ffed4]
add eax, 0x22
mov edx, dword [ecx]
push eax
push 2
push edx
call ebx
mov eax, dword [0x5002e0]
mov ecx, dword [0x4ffed4]
add eax, 0x41
mov edx, dword [ecx]
push eax
push 3
push edx
call ebx
mov ecx, dword [0x4ffed4]
mov eax, dword [0x5002e0]
push eax
push 0x3d
mov edx, dword [ecx]
push edx
call ebx
mov eax, dword [0x5002e0]
mov ecx, dword [0x4ffed4]
add esp, 0x48
add eax, 4
mov edx, dword [ecx]
push eax
push 0x3e
push edx
call ebx
mov ecx, dword [0x4ffed4]
lea eax, [esp + 0x68]
push eax
push 0x3f
mov edx, dword [ecx]
push edx
call ebx
mov ecx, dword [0x4ffed4]
mov eax, dword [0x5002dc]
push eax
push 0x40
mov edx, dword [ecx]
push edx
call ebx
mov ecx, dword [0x4ffed4]
mov eax, dword [0x5002d0]
push eax
push 0x41
mov edx, dword [ecx]
push edx
call ebx
mov ecx, dword [esp + 0x8c]
xor eax, eax
cmp ecx, 1
mov ecx, dword [0x5002e0]
sete al
mov dword [ecx + 8], eax
mov eax, dword [0x4ffed4]
lea edx, [esp + 0x84]
mov ecx, dword [eax]
push edx
push 0x37
push ecx
call ebx
mov edx, dword [0x4ffd28]
add esp, 0x3c
fld qword [esp + 0x54]
push edx
call fcn.004a132c
mov ecx, dword [0x4ffce8]
push eax
call dword [0x5001e8]
mov eax, dword [0x537850]
cmp eax, edi
jne 0x4dbb84
mov eax, dword [0x5002d0]
mov dword [0x5378f4], edi
cmp dword [eax], 1
jne 0x4dbb79
mov ecx, dword [0x4ffed4]
mov edi, 0x5378c0
mov esi, dword [ecx]
mov ecx, 6
add esi, 0x88
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp + 8]
mov dword [0x5378a0], 2
mov dword [edx], 2
jmp 0x4dbd17
mov dword [0x5378a0], edi
jmp 0x4dbd17
cmp eax, 1
je 0x4dbc4d
cmp eax, 2
je 0x4dbc4d
cmp eax, 3
jne 0x4dbd17
mov ecx, dword [0x4ffed4]
lea eax, [esp + 0x88]
push eax
push 0xa
mov edx, dword [ecx]
push edx
call ebx
mov ecx, dword [0x4ffed4]
lea eax, [esp + 0x88]
push eax
push 0x2c
mov edx, dword [ecx]
push edx
call ebx
push 0xc0
call fcn.004a021c
mov esi, eax
add esp, 0x1c
mov dword [esp + 0x60], esi
cmp esi, edi
mov byte [esp + 0x570], 3
je 0x4dbc2a
mov eax, dword [0x500730]
mov edx, dword [0x500798]
mov cl, byte [eax]
mov al, byte [edx]
push ecx
mov ecx, dword [0x500794]
push eax
mov eax, dword [esp + 0x88]
mov dl, byte [ecx]
mov ecx, dword [esp + 0x84]
push edx
push eax
lea edx, [esp + 0x98]
push ecx
push edx
mov ecx, esi
call dword [0x4fffc8]
mov dword [esi], 0x504f30
jmp 0x4dbc2c
xor esi, esi
mov eax, dword [0x5002d0]
mov dword [0x5378f4], esi
mov byte [esp + 0x570], 1
cmp dword [eax], 1
jne 0x4dbb61
jmp 0x4dbb47
mov ecx, dword [0x4ffed4]
lea eax, [esp + 0x88]
push eax
push 0xa
mov edx, dword [ecx]
push edx
call ebx
mov ecx, dword [0x4ffed4]
lea eax, [esp + 0x4fc]
push eax
push 0xb
mov edx, dword [ecx]
push edx
call ebx
push 0x98
call fcn.004a021c
mov esi, eax
add esp, 0x1c
mov dword [esp + 0x60], esi
cmp esi, edi
mov byte [esp + 0x570], 2
je 0x4dbcd0
mov eax, dword [0x500730]
mov edx, dword [0x500798]
mov cl, byte [eax]
mov al, byte [edx]
push ecx
mov ecx, dword [0x500794]
push eax
lea eax, [esp + 0x4f8]
mov dl, byte [ecx]
lea ecx, [esp + 0x90]
push edx
push eax
push ecx
mov ecx, esi
call dword [0x4ffdc0]
mov dword [esi], 0x50480c
jmp 0x4dbcd2
xor esi, esi
mov edx, dword [0x5002d0]
mov dword [0x5378f4], esi
mov byte [esp + 0x570], 1
cmp dword [edx], 1
jne 0x4dbd04
mov eax, dword [0x4ffed4]
mov ecx, 6
mov edi, 0x5378c0
mov esi, dword [eax]
add esi, 0x88
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 8]
mov dword [0x5378a0], 2
mov dword [ecx], 2
call dword [0x500cac]
push 0x5378f8
push 0x9e66
call dword [0x500cb0]
mov eax, dword [0x5378f8]
add esp, 8
cmp eax, 1
jne 0x4dc75b
mov eax, dword [0x500730]
mov ecx, dword [0x4ffed4]
push 0
mov dl, byte [eax]
mov byte [esp + 0x13], dl
mov edx, dword [ecx]
mov cl, byte [edx + 5]
mov byte [eax], cl
lea ecx, [esp + 0xa4]
call fcn.004ea080
mov edx, dword [0x5002dc]
mov byte [esp + 0x570], 4
mov dword [edx], 1
call fcn.0044b470
mov eax, dword [0x5002c4]
lea ecx, [esp + 0xa0]
mov dword [eax], 1
call fcn.004a0756
cmp eax, 1
jne 0x4dc21c
mov ecx, dword [0x5002c4]
mov edi, 0x5378c0
mov dword [ecx], 0
mov eax, dword [0x4ffed4]
mov ecx, 6
mov esi, dword [eax]
add esi, 0x88
rep movsd dword es:[edi], dword [esi]
mov edx, dword [eax]
mov ecx, dword [edx + 0xa0]
mov edx, dword [edx + 0xa4]
mov dword [0x537878], ecx
mov ecx, dword [0x537850]
mov dword [0x53787c], edx
test ecx, ecx
je 0x4dbdf8
fld qword [0x537878]
fadd qword [0x5028b0]
fstp qword [0x537878]
mov ecx, dword [0x5002d0]
cmp dword [ecx], 1
jne 0x4dbe14
mov edx, dword [eax]
push 0x5378a8
push 0xc
push edx
call ebx
add esp, 0xc
jmp 0x4dbe55
mov eax, dword [0x53787c]
mov ecx, dword [0x537878]
mov edx, dword [0x5378cc]
push 0x5378b0
push 0x5378a8
push 0x40240000
push 0
push eax
mov eax, dword [0x5378c8]
push ecx
mov ecx, dword [0x5378c4]
push edx
mov edx, dword [0x5378c0]
push eax
push ecx
push edx
call fcn.0041c3b0
add esp, 0x28
mov eax, dword [0x5378f4]
mov ecx, 6
push eax
mov esi, 0x5378a8
sub esp, 0x18
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call dword [0x5002c8]
mov ecx, dword [0x500730]
mov dl, byte [esp + 0x43]
mov ebx, eax
mov byte [ecx], dl
call dword [0x4ff3b4]
mov eax, dword [0x4ffed4]
push 0xfffffffffffffffa
mov ecx, dword [eax]
push ecx
call dword [0x4ff3a0]
mov edx, dword [0x4ffed4]
mov ecx, dword [0x4ff8f8]
mov eax, dword [edx]
mov edx, dword [ecx]
push eax
push edx
call dword [0x4ff384]
mov eax, dword [0x4ffed4]
add esp, 0x44
lea ecx, [esp + 0x14]
lea edx, [esp + 0x64]
push ecx
lea ecx, [esp + 0x54c]
mov dword [eax], 0
mov eax, dword [ebx]
push edx
push ecx
mov ecx, ebx
call dword [eax + 0x30]
sub esp, 0x20
mov ecx, 8
mov esi, eax
mov edi, esp
lea edx, [ebx + 0x68]
rep movsd dword es:[edi], dword [esi]
push edx
call dword [0x4ff424]
mov esi, eax
lea eax, [esp + 0x60]
lea ecx, [esp + 0x40]
push eax
push ecx
call dword [0x4ffeb0]
lea edx, [ebx + 0xb0]
add esp, 0x34
test edx, edx
je 0x4dbf34
lea eax, [esp + 0x34]
push 1
lea ecx, [ebx + 0x118]
push eax
push ecx
call dword [0x4ff3b0]
add esp, 0xc
lea edx, [esp + 0x14]
push edx
push 0
call dword [0x4ff3d4]
add esp, 8
test esi, esi
je 0x4dbf4f
mov byte [ebx + 0x150], 1
push ebx
call dword [0x4ff398]
push 1
call dword [0x500c28]
mov eax, dword [0x5002d0]
mov ecx, dword [esp + 0x18]
add esp, 8
mov dword [eax], ecx
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
mov ecx, 0x18
rep movsd dword es:[edi], dword [esi]
mov edx, dword [0x5002dc]
xor esi, esi
mov dword [0x5378f8], esi
mov dword [edx], esi
mov ecx, dword [0x5378f4]
cmp ecx, esi
je 0x4dbfa6
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov dword [0x5378f4], esi
call dword [0x500cac]
push 0x9e77
call dword [0x500cc4]
add esp, 4
call fcn.0044b420
lea ecx, [esp + 0x4ec]
mov byte [esp + 0x570], 0x1f
call fcn.0049ffca
lea ecx, [esp + 0x4e8]
mov byte [esp + 0x570], 0x1e
call fcn.0049ffca
lea ecx, [esp + 0x4a8]
mov byte [esp + 0x570], 0x1d
call fcn.004a0d7a
lea ecx, [esp + 0x468]
mov byte [esp + 0x570], 0x1c
call fcn.004a0d7a
lea ecx, [esp + 0x428]
mov byte [esp + 0x570], 0x1b
call fcn.004a0ccc
mov esi, 0x5033b8
lea ecx, [esp + 0x420]
mov byte [esp + 0x570], 0x1a
mov dword [esp + 0x420], esi
call fcn.00415fa0
lea ecx, [esp + 0x418]
mov byte [esp + 0x570], 0x19
mov dword [esp + 0x418], esi
call fcn.00415fa0
lea ecx, [esp + 0x410]
mov byte [esp + 0x570], 0x18
mov dword [esp + 0x410], esi
call fcn.00415fa0
lea ecx, [esp + 0x408]
mov byte [esp + 0x570], 0x17
mov dword [esp + 0x408], esi
call fcn.00415fa0
lea ecx, [esp + 0x400]
mov byte [esp + 0x570], 0x16
mov dword [esp + 0x400], esi
call fcn.00415fa0
lea ecx, [esp + 0x3f8]
mov byte [esp + 0x570], 0x15
call fcn.0042a370
lea ecx, [esp + 0x3f0]
mov byte [esp + 0x570], 0x14
call fcn.0042a370
lea ecx, [esp + 0x3e8]
mov byte [esp + 0x570], 0x13
call fcn.0042a370
lea ecx, [esp + 0x3e0]
mov byte [esp + 0x570], 0x12
call fcn.0042a370
mov byte [esp + 0x570], 0x11
lea ecx, [esp + 0x3d8]
call fcn.0042a370
lea ecx, [esp + 0x3d0]
mov byte [esp + 0x570], 0x10
call fcn.0042a370
lea ecx, [esp + 0x390]
mov byte [esp + 0x570], 0xf
call fcn.004a0ccc
lea ecx, [esp + 0x350]
mov byte [esp + 0x570], 0xe
call fcn.004a0ccc
lea ecx, [esp + 0x310]
mov byte [esp + 0x570], 0xd
call fcn.004a0ccc
lea ecx, [esp + 0x2d0]
mov byte [esp + 0x570], 0xc
call fcn.004a0ccc
lea ecx, [esp + 0x290]
mov byte [esp + 0x570], 0xb
call fcn.004a0ccc
lea ecx, [esp + 0x250]
mov byte [esp + 0x570], 0xa
call fcn.004a0ccc
lea ecx, [esp + 0x210]
mov byte [esp + 0x570], 9
call fcn.004a0ccc
lea ecx, [esp + 0x1d0]
mov byte [esp + 0x570], 8
call fcn.004a0ccc
lea ecx, [esp + 0x190]
mov byte [esp + 0x570], 7
call fcn.004a0ccc
lea ecx, [esp + 0x150]
mov byte [esp + 0x570], 6
call fcn.004a0ccc
lea ecx, [esp + 0x110]
mov byte [esp + 0x570], 5
call fcn.004a0ccc
lea ecx, [esp + 0xa0]
mov byte [esp + 0x570], 1
call fcn.004a0288
jmp 0x4dcc81
cmp eax, 2
jne 0x4dc503
mov ecx, dword [0x500730]
mov dl, byte [esp + 0xf]
mov byte [ecx], dl
mov eax, dword [0x5002d0]
mov ecx, dword [esp + 0x10]
mov dword [eax], ecx
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
mov ecx, 0x18
rep movsd dword es:[edi], dword [esi]
mov edx, dword [0x5002dc]
xor esi, esi
mov dword [0x5378f8], esi
mov dword [edx], esi
mov eax, dword [0x5002c4]
mov dword [eax], esi
mov ecx, dword [0x5378f4]
cmp ecx, esi
je 0x4dc27d
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov dword [0x5378f4], esi
call dword [0x500cac]
mov eax, dword [0x4ffed4]
push 0xfffffffffffffffd
mov ecx, dword [eax]
push ecx
call dword [0x4ff3a0]
push 0x9e77
call dword [0x500cc4]
add esp, 0xc
call fcn.0044b420
lea ecx, [esp + 0x4ec]
mov byte [esp + 0x570], 0x3a
call fcn.0049ffca
lea ecx, [esp + 0x4e8]
mov byte [esp + 0x570], 0x39
call fcn.0049ffca
lea ecx, [esp + 0x4a8]
mov byte [esp + 0x570], 0x38
call fcn.004a0d7a
lea ecx, [esp + 0x468]
mov byte [esp + 0x570], 0x37
call fcn.004a0d7a
lea ecx, [esp + 0x428]
mov byte [esp + 0x570], 0x36
call fcn.004a0ccc
mov esi, 0x5033b8
lea ecx, [esp + 0x420]
mov byte [esp + 0x570], 0x35
mov dword [esp + 0x420], esi
call fcn.00415fa0
lea ecx, [esp + 0x418]
mov byte [esp + 0x570], 0x34
mov dword [esp + 0x418], esi
call fcn.00415fa0
lea ecx, [esp + 0x410]
mov byte [esp + 0x570], 0x33
mov dword [esp + 0x410], esi
call fcn.00415fa0
lea ecx, [esp + 0x408]
mov byte [esp + 0x570], 0x32
mov dword [esp + 0x408], esi
call fcn.00415fa0
lea ecx, [esp + 0x400]
mov byte [esp + 0x570], 0x31
mov dword [esp + 0x400], esi
call fcn.00415fa0
lea ecx, [esp + 0x3f8]
mov byte [esp + 0x570], 0x30
call fcn.0042a370
lea ecx, [esp + 0x3f0]
mov byte [esp + 0x570], 0x2f
call fcn.0042a370
mov byte [esp + 0x570], 0x2e
lea ecx, [esp + 0x3e8]
call fcn.0042a370
lea ecx, [esp + 0x3e0]
mov byte [esp + 0x570], 0x2d
call fcn.0042a370
lea ecx, [esp + 0x3d8]
mov byte [esp + 0x570], 0x2c
call fcn.0042a370
lea ecx, [esp + 0x3d0]
mov byte [esp + 0x570], 0x2b
call fcn.0042a370
lea ecx, [esp + 0x390]
mov byte [esp + 0x570], 0x2a
call fcn.004a0ccc
lea ecx, [esp + 0x350]
mov byte [esp + 0x570], 0x29
call fcn.004a0ccc
lea ecx, [esp + 0x310]
mov byte [esp + 0x570], 0x28
call fcn.004a0ccc
lea ecx, [esp + 0x2d0]
mov byte [esp + 0x570], 0x27
call fcn.004a0ccc
lea ecx, [esp + 0x290]
mov byte [esp + 0x570], 0x26
call fcn.004a0ccc
lea ecx, [esp + 0x250]
mov byte [esp + 0x570], 0x25
call fcn.004a0ccc
lea ecx, [esp + 0x210]
mov byte [esp + 0x570], 0x24
call fcn.004a0ccc
lea ecx, [esp + 0x1d0]
mov byte [esp + 0x570], 0x23
call fcn.004a0ccc
lea ecx, [esp + 0x190]
mov byte [esp + 0x570], 0x22
call fcn.004a0ccc
lea ecx, [esp + 0x150]
mov byte [esp + 0x570], 0x21
call fcn.004a0ccc
lea ecx, [esp + 0x110]
mov byte [esp + 0x570], 0x20
call fcn.004a0ccc
lea ecx, [esp + 0xa0]
mov byte [esp + 0x570], 1
call fcn.004a0288
jmp 0x4dcc81
lea ecx, [esp + 0x4ec]
mov byte [esp + 0x570], 0x55
call fcn.0049ffca
lea ecx, [esp + 0x4e8]
mov byte [esp + 0x570], 0x54
call fcn.0049ffca
lea ecx, [esp + 0x4a8]
mov byte [esp + 0x570], 0x53
call fcn.004a0d7a
lea ecx, [esp + 0x468]
mov byte [esp + 0x570], 0x52
call fcn.004a0d7a
lea ecx, [esp + 0x428]
mov byte [esp + 0x570], 0x51
call fcn.004a0ccc
mov esi, 0x5033b8
lea ecx, [esp + 0x420]
mov byte [esp + 0x570], 0x50
mov dword [esp + 0x420], esi
call fcn.00415fa0
lea ecx, [esp + 0x418]
mov byte [esp + 0x570], 0x4f
mov dword [esp + 0x418], esi
call fcn.00415fa0
lea ecx, [esp + 0x410]
mov byte [esp + 0x570], 0x4e
mov dword [esp + 0x410], esi
call fcn.00415fa0
lea ecx, [esp + 0x408]
mov byte [esp + 0x570], 0x4d
mov dword [esp + 0x408], esi
call fcn.00415fa0
lea ecx, [esp + 0x400]
mov byte [esp + 0x570], 0x4c
mov dword [esp + 0x400], esi
call fcn.00415fa0
lea ecx, [esp + 0x3f8]
mov byte [esp + 0x570], 0x4b
call fcn.0042a370
lea ecx, [esp + 0x3f0]
mov byte [esp + 0x570], 0x4a
call fcn.0042a370
lea ecx, [esp + 0x3e8]
mov byte [esp + 0x570], 0x49
call fcn.0042a370
lea ecx, [esp + 0x3e0]
mov byte [esp + 0x570], 0x48
call fcn.0042a370
lea ecx, [esp + 0x3d8]
mov byte [esp + 0x570], 0x47
call fcn.0042a370
lea ecx, [esp + 0x3d0]
mov byte [esp + 0x570], 0x46
call fcn.0042a370
lea ecx, [esp + 0x390]
mov byte [esp + 0x570], 0x45
call fcn.004a0ccc
lea ecx, [esp + 0x350]
mov byte [esp + 0x570], 0x44
call fcn.004a0ccc
lea ecx, [esp + 0x310]
mov byte [esp + 0x570], 0x43
call fcn.004a0ccc
lea ecx, [esp + 0x2d0]
mov byte [esp + 0x570], 0x42
call fcn.004a0ccc
lea ecx, [esp + 0x290]
mov byte [esp + 0x570], 0x41
call fcn.004a0ccc
lea ecx, [esp + 0x250]
mov byte [esp + 0x570], 0x40
call fcn.004a0ccc
lea ecx, [esp + 0x210]
mov byte [esp + 0x570], 0x3f
call fcn.004a0ccc
lea ecx, [esp + 0x1d0]
mov byte [esp + 0x570], 0x3e
call fcn.004a0ccc
lea ecx, [esp + 0x190]
mov byte [esp + 0x570], 0x3d
call fcn.004a0ccc
lea ecx, [esp + 0x150]
mov byte [esp + 0x570], 0x3c
call fcn.004a0ccc
lea ecx, [esp + 0x110]
mov byte [esp + 0x570], 0x3b
call fcn.004a0ccc
lea ecx, [esp + 0xa0]
mov byte [esp + 0x570], 1
call fcn.004a0288
mov edx, dword [0x5002d0]
cmp dword [edx], 1
jne 0x4dc780
push 0x9e63
call dword [0x500cc4]
add esp, 4
mov dword [0x5378a0], 2
jmp 0x4dc78e
push 0x9e7e
call dword [0x500cc4]
add esp, 4
push 0
push 0xffff
call dword [0x500cc8]
mov eax, dword [0x4ffd28]
push eax
call fcn.004d9360
mov ecx, dword [ebp + 0xc]
add esp, 0xc
mov dword [ecx], 1
jmp case.default.0x4db9ce
push 0x5378c0
call dword [0x500ba8]
add esp, 4
cmp eax, 0x3e9
jne 0x4dc822
call dword [0x500cac]
push 0x9e77
call dword [0x500cc4]
mov edx, dword [0x5002d0]
add esp, 4
mov dword [edx], ebx
mov eax, dword [0x5002dc]
mov dword [eax], ebx
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
mov ecx, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x5378f4]
cmp ecx, ebx
je 0x4dcc81
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov dword [0x5378f4], ebx
jmp 0x4dcc81
push 0x9e6c
call dword [0x500cc4]
mov dword [0x5378a0], 1
add esp, 4
mov dword [esi], 1
jmp case.default.0x4db9ce
fld qword [0x5378c0]
fadd qword [0x504e20]
mov ecx, dword [0x5378cc]
mov eax, dword [0x5378c8]
push ebx
push 0x5378a8
push 0x537878
mov dword [0x5378b4], ecx
fstp qword [0x5378a8]
sub esp, 0x18
mov ecx, 6
mov esi, 0x5378a8
mov edi, esp
mov dword [0x5378b0], eax
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call dword [0x500bd4]
mov edx, dword [0x53787c]
mov eax, dword [0x537878]
mov ecx, dword [0x5378cc]
push 0x5378b0
push 0x5378a8
push 0x40240000
push ebx
push edx
mov edx, dword [0x5378c8]
push eax
mov eax, dword [0x5378c4]
push ecx
mov ecx, dword [0x5378c0]
push edx
push eax
push ecx
call fcn.0041c3b0
mov eax, dword [0x500730]
mov ecx, dword [0x4ffed4]
add esp, 0x64
mov esi, 0x5378a8
mov dl, byte [eax]
mov byte [esp + 0xf], dl
mov edx, dword [ecx]
push ebx
mov cl, byte [edx + 5]
sub esp, 0x18
mov byte [eax], cl
mov ecx, 6
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call dword [0x5002c8]
mov edx, dword [0x500730]
mov ebx, eax
mov al, byte [esp + 0x43]
mov byte [edx], al
call dword [0x4ff3b4]
call fcn.0044b470
mov ecx, dword [0x4ffed4]
push 0xfffffffffffffffa
mov edx, dword [ecx]
push edx
call dword [0x4ff3a0]
mov eax, dword [0x4ffed4]
mov edx, dword [0x4ff8f8]
mov ecx, dword [eax]
mov eax, dword [edx]
push ecx
push eax
call dword [0x4ff384]
mov ecx, dword [0x4ffed4]
add esp, 0x44
lea edx, [esp + 0x14]
mov dword [ecx], 0
push edx
mov edx, dword [ebx]
lea eax, [esp + 0x68]
push eax
lea eax, [esp + 0x510]
push eax
mov ecx, ebx
call dword [edx + 0x30]
sub esp, 0x20
mov ecx, 8
mov esi, eax
mov edi, esp
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebx + 0x68]
push ecx
call dword [0x4ff424]
mov esi, eax
lea edx, [esp + 0x60]
lea eax, [esp + 0x40]
push edx
push eax
call dword [0x4ffeb0]
lea ecx, [ebx + 0xb0]
add esp, 0x34
test ecx, ecx
je 0x4dc9d8
lea edx, [esp + 0x34]
push 1
lea eax, [ebx + 0x118]
push edx
push eax
call dword [0x4ff3b0]
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
push 0
call dword [0x4ff3d4]
add esp, 8
test esi, esi
je 0x4dc9f3
mov byte [ebx + 0x150], 1
push ebx
call dword [0x4ff398]
call fcn.0044b420
push 1
call dword [0x500c28]
call dword [0x500cac]
push 0x9e77
call dword [0x500cc4]
mov edx, dword [0x5002d0]
mov ecx, 0x18
add esp, 0xc
mov dword [edx], 0
mov eax, dword [0x5002dc]
mov dword [eax], 0
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x5378f4]
test ecx, ecx
je 0x4dcc81
jmp 0x4dcc70
push 0x5378a8
call dword [0x500ba8]
add esp, 4
cmp eax, 0x3e9
jne 0x4dcafd
call dword [0x500cac]
push 0x9e77
call dword [0x500cc4]
mov eax, dword [0x5002d0]
add esp, 4
mov dword [eax], ebx
mov ecx, dword [0x5002dc]
mov dword [ecx], ebx
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
mov ecx, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x5378f4]
cmp ecx, ebx
je 0x4dcabe
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov dword [0x5378f4], ebx
lea ecx, [esp + 0x34]
mov byte [esp + 0x570], 0
call fcn.004a0480
lea ecx, [esp + 0x14]
mov dword [esp + 0x570], 0xffffffff
call fcn.004a0480
mov eax, 0x3ea
mov ecx, dword [esp + 0x568]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x500730]
mov edx, dword [0x4ffed4]
mov esi, 0x5378a8
mov cl, byte [eax]
mov byte [esp + 0xf], cl
mov ecx, dword [edx]
mov dl, byte [ecx + 5]
mov ecx, 6
mov byte [eax], dl
mov eax, dword [0x5378f4]
push eax
sub esp, 0x18
mov edi, esp
sub esp, 0x18
rep movsd dword es:[edi], dword [esi]
mov ecx, 6
mov esi, 0x5378c0
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call dword [0x5002c8]
mov ecx, dword [0x500730]
mov dl, byte [esp + 0x43]
mov ebx, eax
mov byte [ecx], dl
call dword [0x4ff3b4]
call fcn.0044b470
mov eax, dword [0x4ffed4]
push 0xfffffffffffffffa
mov ecx, dword [eax]
push ecx
call dword [0x4ff3a0]
mov edx, dword [0x4ffed4]
mov ecx, dword [0x4ff8f8]
mov eax, dword [edx]
mov edx, dword [ecx]
push eax
push edx
call dword [0x4ff384]
mov eax, dword [0x4ffed4]
add esp, 0x44
lea ecx, [esp + 0x14]
lea edx, [esp + 0x64]
push ecx
lea ecx, [esp + 0x52c]
mov dword [eax], 0
mov eax, dword [ebx]
push edx
push ecx
mov ecx, ebx
call dword [eax + 0x30]
sub esp, 0x20
mov ecx, 8
mov esi, eax
mov edi, esp
lea edx, [ebx + 0x68]
rep movsd dword es:[edi], dword [esi]
push edx
call dword [0x4ff424]
mov esi, eax
lea eax, [esp + 0x60]
lea ecx, [esp + 0x40]
push eax
push ecx
call dword [0x4ffeb0]
lea edx, [ebx + 0xb0]
add esp, 0x34
test edx, edx
je 0x4dcbf9
lea eax, [esp + 0x34]
push 1
lea ecx, [ebx + 0x118]
push eax
push ecx
call dword [0x4ff3b0]
add esp, 0xc
lea edx, [esp + 0x14]
push edx
push 0
call dword [0x4ff3d4]
add esp, 8
test esi, esi
je 0x4dcc14
mov byte [ebx + 0x150], 1
push ebx
call dword [0x4ff398]
call fcn.0044b420
push 1
call dword [0x500c28]
mov eax, dword [0x5002d0]
mov dword [eax], 0
mov ecx, dword [0x5002dc]
mov dword [ecx], 0
call dword [0x500cac]
push 0x9e77
call dword [0x500cc4]
mov esi, dword [0x5002c0]
mov edi, dword [0x5002e0]
mov ecx, 0x18
add esp, 0xc
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x5378f4]
test ecx, ecx
je 0x4dcc81
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov dword [0x5378f4], 0
lea ecx, [esp + 0x34]
mov byte [esp + 0x570], 0
call fcn.004a0480
lea ecx, [esp + 0x14]
mov dword [esp + 0x570], 0xffffffff
call fcn.004a0480
mov ecx, dword [esp + 0x568]
pop edi
pop esi
mov eax, 0x3ea
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret