Function at 0x4df794
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x66
push 0
push 0
dec ecx
jne 0x4df79c
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
lea eax, [ebp - 0x248]
mov edx, dword [0x53dc58]
call fcn.00403e48
xor eax, eax
push ebp
push 0x4e2fa1
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
mov byte [eax - 5], 0
mov eax, dword [0x4e2fb0]
mov dword [ebp - 0x38], eax
call fcn.004d4364
mov ebx, eax
call fcn.004d4364
test eax, eax
je 0x4df81a
mov eax, ebx
call fcn.005f4bb8
cmp dword [ebp - 4], 0xf00
je 0x4df81a
cmp dword [ebp - 4], 0xf14
je 0x4df81a
cmp dword [ebp - 4], 0xf28
je 0x4df81a
cmp dword [ebp - 4], 0xf3c
je 0x4df81a
mov eax, ebx
call fcn.005d11a0
mov eax, dword [ebp - 4]
cmp eax, 0x1194
jg 0x4dfbdf
je 0x4e208f
cmp eax, 0xe58
jg 0x4dfa12
je 0x4e1ab7
cmp eax, 0xd9e
jg 0x4df92c
je 0x4e10aa
cmp eax, 0xd0c
jg 0x4df8c6
je 0x4e0c62
cmp eax, 0xca8
jg 0x4df89b
je 0x4e08b6
add eax, 0xfffff448
sub eax, 0x1c
jb 0x4dff9b
add eax, 0xffffffcc
sub eax, 4
jb 0x4e03a7
sub eax, 0x74
je 0x4e0483
sub eax, 0x14
je 0x4e067b
jmp case.0x4dfebd.5306
sub eax, 0xcbc
je 0x4e09a6
sub eax, 0x14
je 0x4e0a9d
sub eax, 0x14
je 0x4e0a9d
sub eax, 0x14
je 0x4e0a9d
jmp case.0x4dfebd.5306
cmp eax, 0xd70
jg 0x4df901
je 0x4e0e7a
sub eax, 0xd20
je 0x4e0d23
add eax, 0xffffffec
sub eax, 5
jb 0x4e0d23
sub eax, 0xf
je 0x4e0d64
sub eax, 0x14
je 0x4e0db1
jmp case.0x4dfebd.5306
sub eax, 0xd75
je 0x4e0f79
sub eax, 0xf
je 0x4e0fe6
sub eax, 0x14
je 0x4e1023
sub eax, 5
je 0x4e103b
jmp case.0x4dfebd.5306
cmp eax, 0xe0b
jg 0x4df99d
je 0x4e193b
cmp eax, 0xdd4
jg 0x4df96f
je 0x4e149c
sub eax, 0xdac
je 0x4e1183
sub eax, 0xa
je 0x4e10d7
dec eax
je 0x4e10fc
sub eax, 9
je 0x4e149c
jmp case.0x4dfebd.5306
sub eax, 0xde8
je 0x4e149c
add eax, 0xfffffff6
sub eax, 2
jb 0x4e172e
sub eax, 8
je 0x4e1757
sub eax, 0xa
je 0x4e1761
jmp case.0x4dfebd.5306
cmp eax, 0xe38
jge 0x4df9cf
sub eax, 0xe10
je 0x4e1947
sub eax, 5
je 0x4e195e
sub eax, 0xf
je 0x4e19a8
sub eax, 0xa
je 0x4e19b2
jmp case.0x4dfebd.5306
cmp eax, 0xe55
jg 0x4df9fb
je 0x4e19e0
add eax, 0xfffff1c8
sub eax, 2
jb 0x4e19bc
add eax, 0xfffffffd
sub eax, 5
jb 0x4e19cb
jmp case.0x4dfebd.5306
sub eax, 0xe56
je 0x4e1a23
dec eax
je 0x4e1a6d
jmp case.0x4dfebd.5306
cmp eax, 0xf28
jg 0x4dfaf2
je 0x4e1d0f
cmp eax, 0xea1
jg 0x4dfa8f
je 0x4e1c81
cmp eax, 0xe60
jg 0x4dfa64
je 0x4e1b84
sub eax, 0xe5b
je 0x4e1b01
dec eax
je 0x4e1b2c
sub eax, 2
je 0x4e1b57
dec eax
je 0x4e1b68
jmp case.0x4dfebd.5306
sub eax, 0xe62
je 0x4e1b76
sub eax, 0x12
je 0x4e1c2f
sub eax, 0x14
je 0x4e1c3b
sub eax, 0x14
je 0x4e1c6b
jmp case.0x4dfebd.5306
cmp eax, 0xedd
jg 0x4dfac7
je 0x4e1cbd
sub eax, 0xeb0
je 0x4e1c8d
sub eax, 0x14
je 0x4e1c99
sub eax, 5
je 0x4e1ca5
sub eax, 0xf
je 0x4e1cb1
jmp case.0x4dfebd.5306
sub eax, 0xee2
je 0x4e1cc9
sub eax, 0xa
je 0x4e1cd5
sub eax, 0x14
je 0x4e1ce1
sub eax, 0x14
je 0x4e1cf9
jmp case.0x4dfebd.5306
cmp eax, 0xfb4
jg 0x4dfb76
je 0x4e1e71
cmp eax, 0xf5f
jge 0x4dfb34
sub eax, 0xf3c
je 0x4e1d25
sub eax, 0x14
je 0x4e1d3b
sub eax, 5
je 0x4e1d6c
add eax, 0xfffffffb
sub eax, 2
jb 0x4e1db5
jmp case.0x4dfebd.5306
cmp eax, 0xf78
jg 0x4dfb5d
je 0x4e1e71
add eax, 0xfffff0a1
sub eax, 2
jb 0x4e1dfb
sub eax, 3
je 0x4e1e71
jmp case.0x4dfebd.5306
sub eax, 0xf8c
je 0x4e1e71
sub eax, 0x14
je 0x4e1e71
jmp case.0x4dfebd.5306
cmp eax, 0x107c
jg 0x4dfbae
je 0x4e1f1b
sub eax, 0xfb9
je 0x4e1e71
sub eax, 5
je 0x4e1e71
sub eax, 0xa
je 0x4e1ef9
sub eax, 0x50
je 0x4e1f0f
jmp case.0x4dfebd.5306
add eax, 0xffffef7f
sub eax, 2
jb 0x4e1f5d
je 0x4e1f6c
add eax, 0xfffffffd
sub eax, 0xd
jb 0x4e2070
add eax, 0xffffffef
sub eax, 0x29
jb 0x4e149c
jmp case.0x4dfebd.5306
cmp eax, 0x13c6
jge 0x4dfdb2
cmp eax, 0x11d5
jg 0x4dfce0
je 0x4e22b9
add eax, 0xffffee62
cmp eax, 0x33
ja case.0x4dfebd.5306
jmp dword [eax*4 + 0x4dfc10]
cmp eax, 0x132e
jg 0x4dfd50
je 0x4e239e
cmp eax, 0x1220
jg 0x4dfd23
je 0x4e22f5
sub eax, 0x11f8
je 0x4e22c9
dec eax
je 0x4e22d5
sub eax, 0x13
je 0x4e22e1
sub eax, 0xa
je 0x4e22eb
jmp case.0x4dfebd.5306
sub eax, 0x1225
je 0x4e2305
sub eax, 5
je 0x4e2317
sub eax, 5
je 0x4e2325
sub eax, 0xf5
je 0x4e2376
jmp case.0x4dfebd.5306
cmp eax, 0x1388
jg 0x4dfd88
je 0x4e23d0
sub eax, 0x1333
je 0x4e23ae
sub eax, 5
je 0x4e238a
sub eax, 5
je 0x4e23c0
sub eax, 5
je 0x4e2380
jmp case.0x4dfebd.5306
sub eax, 0x13ba
je 0x4e2410
dec eax
je 0x4e241c
dec eax
je 0x4e2428
add eax, 0xfffffffb
sub eax, 3
jb 0x4e2434
jmp case.0x4dfebd.5306
cmp eax, 0x14b7
jg 0x4dfe9e
je 0x4e2872
cmp eax, 0x1450
jg 0x4dfe3a
je 0x4e2756
cmp eax, 0x13d4
jg 0x4dfe09
je 0x4e25f1
add eax, 0xffffec3a
sub eax, 3
jb 0x4e2657
sub eax, 6
jb 0x4e2448
sub eax, 3
je 0x4e257f
dec eax
je 0x4e258b
jmp case.0x4dfebd.5306
add eax, 0xffffec28
sub eax, 2
jb 0x4e2657
add eax, 0xfffffffd
sub eax, 2
jb 0x4e2657
sub eax, 0xd
je 0x4e2742
sub eax, 5
je 0x4e274c
jmp case.0x4dfebd.5306
cmp eax, 0x145f
jg 0x4dfe70
je 0x4e278e
sub eax, 0x1455
je 0x4e2760
sub eax, 5
je 0x4e276c
sub eax, 2
je 0x4e2776
dec eax
je 0x4e2782
jmp case.0x4dfebd.5306
sub eax, 0x1482
je 0x4e1b84
sub eax, 0xa
je 0x4e2798
sub eax, 0x23
je 0x4e285a
add eax, 0xfffffffb
sub eax, 2
jb 0x4e2868
jmp case.0x4dfebd.5306
cmp eax, 0x14d7
jg 0x4dff3c
je 0x4e2970
add eax, 0xffffeb47
cmp eax, 0x1d
ja case.0x4dfebd.5306
jmp dword [eax*4 + 0x4dfec4]
cmp eax, 0x16a8
jg 0x4dff71
je 0x4e2980
sub eax, 0x14e6
je 0x4e2c15
dec eax
je 0x4e2c4b
dec eax
je 0x4e2c64
dec eax
sub eax, 3
jb 0x4e2cdc
jmp case.0x4dfebd.5306
sub eax, 0x16a9
je 0x4e29dd
dec eax
je 0x4e2a31
dec eax
je 0x4e2a5c
add eax, 0xfffffff9
sub eax, 4
jb 0x4e2a87
jmp case.0x4dfebd.5306
mov al, byte [ebp - 4]
sub al, 0xb8
mov byte [ebp - 0x69], al
cmp byte [ebp - 0x69], 0
jne 0x4dfffc
mov eax, ebx
call fcn.005bd35c
test al, al
jne 0x4dfffc
mov eax, ebx
call fcn.005bd394
test al, al
je 0x4dfffc
lea ecx, [ebp - 0x288]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.005ec020
lea edx, [ebp - 0x288]
lea eax, [ebx + 0x258]
call fcn.0053e1c8
test eax, eax
jne 0x4dfffc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3ef0
call fcn.004ea098
jmp case.0x4dfebd.5306
mov al, byte [ebp - 0x69]
sub al, 3
jb 0x4e000b
sub al, 0x13
jne 0x4e02f0
call fcn.004deea4
xor eax, eax
mov dword [ebp - 0x70], eax
mov al, byte [ebp - 0x69]
sub al, 2
je 0x4e0020
sub al, 0x14
jne 0x4e0049
mov eax, ebx
call fcn.005bd394
test al, al
je 0x4e0049
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3ef0
call fcn.004ea098
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0x70], eax
mov eax, dword [ebx + 0x300]
call fcn.00542248
dec eax
jne 0x4e0091
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e007c
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov esi, eax
lea edi, [ebp - 0x1cc]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
jmp 0x4e009b
lea esi, [ebx + 0x258]
lea edi, [ebp - 0x1cc]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
jmp 0x4e009b
mov dword [ebp - 0x1cc], 0x80000000
mov eax, ebx
call fcn.005c6614
mov edi, eax
call fcn.0064d970
mov esi, eax
mov al, byte [ebp - 0x69]
sub al, 2
je 0x4e00b6
sub al, 0x14
jne 0x4e00f0
mov eax, ebx
call fcn.005bd35c
test al, al
jne 0x4e00ca
cmp dword [ebx + 0x25c], 0
jg 0x4e00e4
mov eax, ebx
call fcn.005bd370
test al, al
je 0x4e00f0
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
cmp dword [eax + 4], 0
jle 0x4e00f0
mov edx, 0xd
mov eax, esi
call fcn.0064dbd8
xor eax, eax
mov al, byte [ebp - 0x69]
mov edx, dword [0x6699b8]
movzx edx, word [edx + eax*2]
mov eax, esi
call fcn.0064dbd8
cmp byte [ebp - 0x69], 2
jne 0x4e0118
mov edx, 0xd
mov eax, esi
call fcn.0064dbd8
mov eax, dword [ebx + 0x300]
call fcn.00542248
dec eax
jle 0x4e013d
mov eax, dword [ebx + 0x300]
mov edx, 1
call fcn.00542258
mov eax, ebx
call fcn.005be678
mov byte [ebx + 0x44b], 1
mov eax, ebx
call fcn.005c0d4c
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
movsx eax, word [eax + 0x32]
mov dword [ebp - 0xa8], eax
cmp byte [ebp - 0x69], 0
jne 0x4e017d
mov eax, dword [ebp - 0x80]
cmp dword [eax + 0x37], 0
setne al
mov byte [ebx + 0x476], al
cmp byte [ebx + 0x476], 0
je 0x4e01c2
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e01ab
lea ecx, [ebp - 0x228]
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov edx, eax
mov eax, ebx
call fcn.005c04b4
jmp 0x4e01c2
push esi
push edi
lea esi, [ebx + 0x34c]
lea edi, [ebp - 0x228]
mov ecx, 0x17
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
mov dl, 0x30
mov eax, ebx
call fcn.0055f6b0
mov ecx, esi
mov dl, 0xd
mov eax, ebx
call fcn.005c7acc
mov eax, ebx
call fcn.0055f764
cmp byte [ebx + 0x476], 0
je 0x4e0239
movsx eax, word [ebx + 0x33a]
cmp eax, dword [ebp - 0xa8]
jne 0x4e0239
mov eax, dword [0x6691ec]
mov eax, dword [eax]
mov dword [ebp - 0xb8], eax
mov eax, dword [0x6691ec]
and dword [eax], 0xffffff7f
push 0
lea eax, [ebp - 0x228]
push eax
mov ecx, dword [ebx + 0x300]
mov dl, 2
mov eax, ebx
call fcn.005c7af4
mov eax, dword [0x6691ec]
mov edx, dword [ebp - 0xb8]
mov dword [eax], edx
mov byte [ebx + 0x476], 0
mov eax, dword [0x669840]
mov eax, dword [eax]
call fcn.00499c08
test al, al
je 0x4e0253
mov eax, 0x3070
call fcn.0049a860
mov byte [ebx + 0x44b], 0
mov eax, dword [0x669324]
test byte [eax], 1
je 0x4e02a1
cmp dword [ebp - 0x1cc], 0x80000000
je 0x4e02a1
lea eax, [ebp - 0x1cc]
push eax
mov ecx, dword [esi + 4]
mov dl, 0x19
mov eax, ebx
call fcn.005c7adc
cmp byte [ebx + 0x461], 0
je 0x4e02a1
mov eax, 0x898
call fcn.0049a860
mov eax, dword [0x669840]
mov eax, dword [eax]
mov byte [eax + 0xa], 1
mov eax, esi
call fcn.004028c0
cmp dword [ebp - 0x70], 0
je case.0x4dfebd.5306
mov eax, ebx
call fcn.005c6614
cmp edi, eax
je case.0x4dfebd.5306
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0x70]
mov al, byte [eax + 0x36]
mov edx, dword [ebp - 0xc0]
mov byte [edx + 0x36], al
mov eax, dword [ebp - 0xc0]
or byte [eax + 0x34], 4
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x300]
call fcn.00542248
mov dword [ebp - 0xb0], eax
mov byte [ebp - 0x248], 3
mov al, byte [0x4e2fb0]
mov byte [ebp - 0x247], al
mov dword [ebp - 0x244], 0xd20
xor eax, eax
mov al, byte [ebp - 0x69]
mov edx, dword [0x6699b8]
movzx eax, word [edx + eax*2]
mov dword [ebp - 0x230], eax
mov byte [ebx + 0x47d], 1
lea ecx, [ebp - 0x248]
mov dl, 0xe
mov eax, ebx
call fcn.005c7acc
mov byte [ebx + 0x47d], 0
mov eax, dword [0x669324]
test byte [eax], 1
je case.0x4dfebd.5306
cmp dword [ebp - 0xb0], 1
jne case.0x4dfebd.5306
lea eax, [ebx + 0x258]
push eax
lea ecx, [ebp - 0x230]
mov dl, 0x19
mov eax, ebx
call fcn.005c7adc
cmp byte [ebx + 0x461], 0
je case.0x4dfebd.5306
mov eax, 0x898
call fcn.0049a860
mov eax, dword [0x669840]
mov eax, dword [eax]
mov byte [eax + 0xa], 1
jmp case.0x4dfebd.5306
call fcn.004deea4
xor eax, eax
mov dword [ebp - 0x70], eax
mov eax, ebx
call fcn.005bd394
test al, al
je 0x4e03da
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3ef0
call fcn.004ea098
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0x70], eax
mov eax, ebx
call fcn.005c6614
mov edi, eax
call fcn.0064d970
mov esi, eax
mov edx, 0xc
mov eax, esi
call fcn.0064dc4c
mov dl, byte [ebp - 4]
sub dl, 8
mov eax, esi
call fcn.0064dbb0
mov dl, 0x30
mov eax, ebx
call fcn.0055f6b0
mov ecx, esi
mov dl, 0xd
mov eax, ebx
call fcn.005c7acc
mov eax, ebx
call fcn.0055f764
mov eax, esi
call fcn.004028c0
cmp dword [ebp - 0x70], 0
je 0x4e0460
mov eax, ebx
call fcn.005c6614
cmp edi, eax
je 0x4e0460
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x70]
mov al, byte [eax + 0x36]
mov edx, dword [ebp - 0xc4]
mov byte [edx + 0x36], al
mov eax, dword [ebp - 0xc4]
or byte [eax + 0x34], 4
mov eax, dword [0x669840]
mov eax, dword [eax]
call fcn.00499c08
test al, al
je case.0x4dfebd.5306
mov eax, 0x3070
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd35c
test al, al
jne 0x4e049a
mov eax, dword [ebx + 0x318]
cmp dword [eax + 0x18], 0
jle 0x4e04ab
mov eax, dword [ebp + 8]
push eax
mov al, 1
call fcn.004d8284
pop ecx
jmp case.0x4dfebd.5306
lea edx, [ebx + 0x258]
mov eax, ebx
call fcn.005bfc6c
test al, al
je 0x4e04cb
mov eax, 0x4e2fb4
call fcn.0061f884
jmp case.0x4dfebd.5306
lea esi, [ebx + 0x258]
cmp dword [esi], 0
jle 0x4e053c
cmp dword [esi + 4], 0
jne 0x4e053c
mov edx, dword [esi]
mov eax, ebx
call fcn.0055e038
mov edx, eax
mov eax, ebx
call fcn.0055e0b0
cmp eax, dword [esi]
jle 0x4e053c
mov edx, dword [esi]
mov eax, ebx
call fcn.005b85b8
dec eax
jne 0x4e053c
mov eax, dword [esi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
cmp byte [eax + 0x3c], 0
jne 0x4e053c
mov eax, dword [esi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 - 4]
cmp byte [eax + 0x3c], 0
je 0x4e053c
mov eax, dword [esi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 + 4]
cmp byte [eax + 0x3c], 0
jne 0x4e0540
xor eax, eax
jmp 0x4e0542
mov al, 1
mov edx, dword [ebp + 8]
mov byte [edx - 5], al
mov eax, dword [ebx + 0x258]
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x25c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebx + 0x258]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x25c]
inc eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x10]
call fcn.0054c314
mov esi, eax
mov eax, esi
sub ax, 0x20
jb 0x4e0599
mov eax, esi
call fcn.0062fe60
test al, al
je 0x4e059d
xor eax, eax
jmp 0x4e059f
mov al, 1
mov byte [ebp - 0xb9], al
cmp byte [ebp - 0xb9], 0
je 0x4e05b5
mov byte [ebx + 0x43e], 1
or dword [ebp - 0x38], 0x100
lea edx, [ebp - 0x268]
mov eax, ebx
call fcn.005c0e40
mov eax, dword [ebp - 0x268]
cmp eax, dword [ebp - 0x258]
jne 0x4e05e7
cmp dword [ebp - 0x254], 1
jne 0x4e05e7
mov byte [ebx + 0x446], 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
mov byte [ebx + 0x446], 0
cmp byte [ebx + 0x461], 0
je 0x4e0653
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xc8], eax
mov eax, esi
sub ax, 0xb
je 0x4e062d
sub ax, 0x15
jne 0x4e0639
mov eax, dword [ebp - 0xc8]
or byte [eax + 0x34], 2
jmp 0x4e0649
cmp si, 0x20
jbe 0x4e0649
mov eax, dword [ebp - 0xc8]
or byte [eax + 0x34], 1
mov eax, dword [ebp - 0xc8]
mov byte [eax + 0x35], 1
mov byte [ebx + 0x43e], 0
cmp byte [ebp - 0xb9], 0
je 0x4e066c
mov dl, 1
mov eax, ebx
call fcn.005de230
mov eax, 0x8fc
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e06bd
mov edx, dword [ebx + 0x300]
mov eax, ebx
call fcn.005bd3f4
test al, al
je 0x4e06ac
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3f16
call fcn.004ea098
jmp case.0x4dfebd.5306
mov eax, dword [ebp + 8]
push eax
xor eax, eax
call fcn.004d8284
pop ecx
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x258]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x25c]
mov dword [ebp - 0x18], eax
lea edx, [ebp - 0x288]
mov eax, ebx
call fcn.005c0e40
mov eax, dword [ebp - 0x288]
cmp eax, dword [ebp - 0x1c]
jl 0x4e06f1
cmp dword [ebp - 0x18], 0
jle case.0x4dfebd.5306
cmp dword [ebp - 0x18], 0
jne 0x4e0717
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x14]
mov eax, ebx
call fcn.005b85b8
dec eax
mov dword [ebp - 0x10], eax
mov byte [ebp - 0xb9], 0
xor esi, esi
jmp 0x4e0763
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x10], eax
mov byte [ebx + 0x41d], 1
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x14]
mov eax, dword [eax + edx*4]
mov edx, dword [ebp - 0x10]
call fcn.0054c314
mov esi, eax
mov eax, esi
sub ax, 0x20
jb 0x4e0757
mov eax, esi
call fcn.0062fe60
test al, al
je 0x4e075b
xor eax, eax
jmp 0x4e075d
mov al, 1
mov byte [ebp - 0xb9], al
lea eax, [ebp - 0x14]
mov edx, eax
mov eax, ebx
call fcn.005bfc6c
test al, al
je 0x4e0782
mov eax, 0x4e2fb4
call fcn.0061f884
jmp case.0x4dfebd.5306
lea edi, [ebx + 0x258]
mov edx, dword [edi]
mov eax, ebx
call fcn.0055e038
mov edx, eax
mov eax, ebx
call fcn.0055e08c
inc eax
cmp eax, dword [edi]
jge 0x4e07f8
cmp dword [edi + 4], 0
jne 0x4e07f8
mov eax, dword [edi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
movsx eax, byte [eax + 0x3c]
cmp ax, 1
jne 0x4e07f8
mov edx, dword [edi]
dec edx
mov eax, ebx
call fcn.005b85b8
dec eax
jne 0x4e07f8
mov eax, dword [edi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 - 4]
cmp byte [eax + 0x3c], 0
jne 0x4e07f8
mov eax, dword [edi]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 - 8]
movsx eax, byte [eax + 0x3c]
cmp ax, 1
je 0x4e07fc
xor eax, eax
jmp 0x4e07fe
mov al, 1
mov edx, dword [ebp + 8]
mov byte [edx - 5], al
or dword [ebp - 0x38], 0x800
cmp byte [ebp - 0xb9], 0
je 0x4e081b
mov byte [ebx + 0x43e], 1
mov byte [ebx + 0x419], 1
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
cmp byte [ebx + 0x461], 0
je 0x4e0887
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xcc], eax
mov eax, esi
sub ax, 0xb
je 0x4e0861
sub ax, 0x15
jne 0x4e086d
mov eax, dword [ebp - 0xcc]
or byte [eax + 0x34], 2
jmp 0x4e087d
cmp si, 0x20
jbe 0x4e087d
mov eax, dword [ebp - 0xcc]
or byte [eax + 0x34], 1
mov eax, dword [ebp - 0xcc]
mov byte [eax + 0x35], 1
mov byte [ebx + 0x43e], 0
cmp byte [ebp - 0xb9], 0
je 0x4e08a0
mov dl, 1
mov eax, ebx
call fcn.005de230
mov eax, 0x8fc
call fcn.0049a860
mov byte [ebx + 0x41d], 0
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd328
mov esi, eax
lea edi, [ebp - 0x160]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x150]
lea edx, [ebp - 0x160]
mov eax, ebx
call fcn.005bb838
lea edx, [ebp - 0x160]
lea eax, [ebp - 0x150]
call fcn.0053e1c8
test eax, eax
je case.0x4dfebd.5306
lea ecx, [ebp - 0x288]
lea edx, [ebp - 0x160]
lea eax, [ebp - 0x150]
call fcn.0053df24
lea edx, [ebp - 0x288]
mov eax, ebx
call fcn.005bfa78
test al, al
je 0x4e092f
mov eax, 0x4e2fb4
call fcn.0061f884
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e096c
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov dword [ebp - 0xd0], eax
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov eax, dword [ebp - 0xd0]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0xd0]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov eax, dword [0x6691ec]
test byte [eax], 0x20
je 0x4e097a
or dword [ebp - 0x38], 0x40
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
mov eax, 0x8fc
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd328
mov esi, eax
lea edi, [ebp - 0x160]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x150]
lea edx, [ebp - 0x160]
mov eax, ebx
call fcn.005bba4c
lea edx, [ebp - 0x160]
lea eax, [ebp - 0x150]
call fcn.0053e1c8
test eax, eax
je case.0x4dfebd.5306
lea ecx, [ebp - 0x288]
lea edx, [ebp - 0x150]
lea eax, [ebp - 0x160]
call fcn.0053df24
lea edx, [ebp - 0x288]
mov eax, ebx
call fcn.005bfa78
test al, al
je 0x4e0a1f
mov eax, 0x4e2fb4
call fcn.0061f884
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e0a5c
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov dword [ebp - 0xd4], eax
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov eax, dword [ebp - 0xd4]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0xd4]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov eax, dword [0x6691ec]
test byte [eax], 0x20
je 0x4e0a6a
or dword [ebp - 0x38], 0x40
or dword [ebp - 0x38], 0x100
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
mov eax, 0x8fc
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd328
mov esi, eax
lea edi, [ebp - 0x170]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x170]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0xd8], eax
push 0
mov ecx, 0x7fffffff
mov edx, dword [ebp - 0x16c]
mov eax, dword [ebp - 0xd8]
call fcn.0054d11c
mov edx, dword [ebp - 0xd8]
mov edx, dword [edx + 0x10]
mov edx, dword [edx + 0x1c]
mov esi, dword [edx + eax*4]
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e0b2f
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov dword [ebp - 0xdc], eax
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov eax, dword [ebp - 0xdc]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0xdc]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov eax, dword [ebp - 4]
sub eax, 0xcd0
je 0x4e0b40
sub eax, 0x14
je 0x4e0b63
jmp 0x4e0b86
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x28]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 0x28]
add eax, dword [esi + 0x2c]
mov dword [ebp - 0x18], eax
jmp 0x4e0bc6
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x28]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x18], eax
jmp 0x4e0bc6
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 0x28]
add eax, dword [esi + 0x2c]
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 8]
call fcn.0054bb18
dec eax
cmp eax, dword [esi + 0x34]
je 0x4e0bc3
mov eax, esi
call fcn.00545494
test al, al
je 0x4e0bc6
dec dword [ebp - 0x18]
lea ecx, [ebp - 0x288]
lea edx, [ebp - 0x1c]
lea eax, [ebp - 0x14]
call fcn.0053df24
lea edx, [ebp - 0x288]
mov eax, ebx
call fcn.005bfa78
test al, al
je 0x4e0bf7
mov eax, 0x4e2fb4
call fcn.0061f884
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax], 0x20
je 0x4e0c05
or dword [ebp - 0x38], 0x40
or dword [ebp - 0x38], 0x100
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
cmp dword [ebp - 4], 0xcd0
je 0x4e0c35
cmp dword [ebp - 4], 0xce4
jne 0x4e0c53
push 0x7fffffff
mov al, byte [0x4e2fb0]
push eax
mov ecx, dword [ebx + 0x25c]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.005bb588
mov eax, 0x8fc
call fcn.0049a860
jmp case.0x4dfebd.5306
call fcn.00530afc
mov dword [ebp - 0xe0], eax
or dword [0x66be54], 0x2000
mov edx, dword [ebx + 0x300]
mov eax, ebx
call fcn.005bd3f4
test al, al
je 0x4e0c96
mov eax, ebx
call fcn.005ee360
mov byte [0x66be5c], al
jmp 0x4e0c9d
mov byte [0x66be5c], 0xff
mov edx, 0x2710
mov eax, dword [ebp - 0xe0]
call fcn.0052fc04
xor eax, eax
push ebp
push 0x4e0cf0
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
call fcn.004d4364
mov edx, eax
xor ecx, ecx
mov eax, dword [ebp - 0xe0]
call fcn.00530690
mov eax, dword [0x6691ec]
cmp byte [eax + 4], 0
jne 0x4e0ce6
mov eax, 0x910
call fcn.0049a860
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4e0d04
mov eax, dword [ebp - 0xe0]
call fcn.0052fdc4
and dword [0x66be54], 0xffffdfff
call fcn.004fe3fc
jmp case.0x4dfebd.5306
mov byte [ebp - 0x248], 0
mov al, byte [0x4e2fb0]
mov byte [ebp - 0x247], al
mov eax, dword [ebp - 4]
mov dword [ebp - 0x244], eax
xor eax, eax
mov dword [ebp - 0x240], eax
lea ecx, [ebp - 0x248]
mov dl, 0xe
mov eax, ebx
call fcn.005c7acc
mov eax, 0x924
call fcn.0049a860
jmp case.0x4dfebd.5306
lea eax, [ebp - 0x240]
call fcn.0049e6a8
test al, al
je case.0x4dfebd.5306
mov byte [ebp - 0x248], 0
mov al, byte [0x4e2fb0]
mov byte [ebp - 0x247], al
mov dword [ebp - 0x244], 0xd20
lea ecx, [ebp - 0x248]
mov dl, 0xe
mov eax, ebx
call fcn.005c7acc
mov eax, 0x924
call fcn.0049a860
jmp case.0x4dfebd.5306
call fcn.00530afc
mov dword [ebp - 0xe4], eax
or dword [0x66be54], 0x2000
mov edx, dword [ebx + 0x300]
mov eax, ebx
call fcn.005bd3f4
test al, al
je 0x4e0de5
mov eax, ebx
call fcn.005ee360
mov byte [0x66be5c], al
jmp 0x4e0dec
mov byte [0x66be5c], 0xff
mov edx, 0x2710
mov eax, dword [ebp - 0xe4]
call fcn.0052fc04
push 0
call fcn.004d4364
mov edx, eax
xor ecx, ecx
mov eax, dword [ebp - 0xe4]
call fcn.00530690
mov eax, dword [ebp - 0xe4]
call fcn.0052fdc4
and dword [0x66be54], 0xffffdfff
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e0e50
mov eax, ebx
call fcn.005ee360
dec eax
sub al, 3
jae 0x4e0e50
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3f16
call fcn.004ea098
jmp 0x4e0e5c
mov eax, dword [ebp + 8]
push eax
mov al, 1
call fcn.004d8284
pop ecx
mov eax, ebx
call fcn.005bd35c
test al, al
jne case.0x4dfebd.5306
mov eax, 0x938
call fcn.0049a860
jmp case.0x4dfebd.5306
call fcn.00530afc
call fcn.0052f57c
mov esi, eax
mov byte [ebp - 0xba], 0
mov ebx, dword [esi + 8]
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov edx, dword [ebx + 0x12c]
dec edx
mov eax, ebx
call fcn.005b85b8
mov ecx, eax
dec ecx
mov edx, dword [ebx + 0x12c]
dec edx
mov eax, ebx
call fcn.005bb588
cmp dword [ebx + 0x25c], 0
jle 0x4e0f2c
call fcn.0049a1f8
mov eax, dword [0x669324]
test byte [eax], 1
setne al
mov byte [ebp - 0xbb], al
mov eax, dword [0x669324]
and word [eax], 0xfffe
mov eax, dword [esi + 8]
call fcn.004d4378
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0xbb8
call fcn.004ea098
call fcn.004d4394
cmp byte [ebp - 0xbb], 0
je 0x4e0f11
mov eax, dword [0x669324]
or word [eax], 1
call fcn.0049a1f0
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov byte [eax + 0x36], 0xd
mov byte [ebp - 0xba], 1
mov eax, ebx
call fcn.005c6614
mov edi, eax
call fcn.004d4364
mov edx, eax
mov eax, esi
call fcn.0052e4ec
cmp byte [ebp - 0xba], 0
je 0x4e0f6a
mov eax, dword [esi + 8]
call fcn.005c6614
cmp edi, eax
je 0x4e0f6a
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x4ac]
call fcn.0064e250
or byte [eax + 0x34], 4
mov eax, 0x94c
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0xd70
call fcn.004ea098
call fcn.0049a1f8
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e0fb7
mov eax, ebx
call fcn.005ee360
dec eax
sub al, 3
jae 0x4e0fb7
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x3f16
call fcn.004ea098
jmp 0x4e0fc3
mov eax, dword [ebp + 8]
push eax
mov al, 1
call fcn.004d8284
pop ecx
call fcn.0049a1f0
mov eax, ebx
call fcn.005bd35c
test al, al
jne case.0x4dfebd.5306
mov eax, 0x951
call fcn.0049a860
jmp case.0x4dfebd.5306
call fcn.00530afc
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0xe8]
call fcn.0052fbc0
test al, al
je case.0x4dfebd.5306
mov eax, dword [ebp - 0xe8]
call fcn.0052f57c
call fcn.0052e0b8
mov eax, 0x960
call fcn.0049a860
jmp case.0x4dfebd.5306
mov dl, 0xf
mov eax, ebx
call fcn.005c7abc
mov eax, 0x974
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
mov al, byte [eax + 4]
xor al, 1
mov edx, dword [0x6691ec]
mov byte [edx + 4], al
call fcn.004fe3f4
mov eax, dword [0x669b4c]
cmp dword [eax], 0
je case.0x4dfebd.5306
call fcn.00530afc
cmp dword [eax + 0xc], 0
je case.0x4dfebd.5306
call fcn.00530afc
mov eax, dword [eax + 0xc]
mov edx, dword [eax + 8]
mov eax, dword [0x669b4c]
mov eax, dword [eax]
call fcn.005373cc
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 0
je case.0x4dfebd.5306
mov eax, dword [ebp - 0x88]
call fcn.00535fb4
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 1], 2
je 0x4e10c2
mov eax, dword [0x6691ec]
and dword [eax], 0xfffffdff
jmp 0x4e10cd
mov eax, dword [0x6691ec]
or dword [eax], 0x200
call fcn.004fe3f4
jmp case.0x4dfebd.5306
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x233c
call fcn.004ea098
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x2ef4
call fcn.004ea098
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005c6614
mov edi, eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x2350
call fcn.004ea098
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x2f08
call fcn.004ea098
mov eax, ebx
call fcn.005c6614
cmp edi, eax
je case.0x4dfebd.5306
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov byte [eax + 0x36], 0xe
mov edx, edi
mov eax, ebx
call fcn.005c6660
cmp eax, 2
jne case.0x4dfebd.5306
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
or byte [eax + 0x34], 4
mov eax, dword [ebx + 0x4ac]
mov eax, dword [eax + 0x18]
mov edx, dword [ebx + 0x4ac]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 - 8]
mov byte [eax + 0x36], 0xe
jmp case.0x4dfebd.5306
lea edx, [ebx + 0x304]
mov eax, ebx
call fcn.005bd750
mov byte [ebp - 0xba], 0
mov eax, dword [ebx + 0x304]
mov eax, dword [eax + 4]
mov edx, dword [eax]
mov dword [ebp - 0x24], edx
mov edx, dword [eax + 4]
mov dword [ebp - 0x20], edx
mov eax, dword [ebx + 0x304]
call fcn.00542248
dec eax
jne 0x4e130e
mov eax, dword [0x6691ec]
test byte [eax], 0x20
je 0x4e11dc
mov edx, dword [ebx + 0x304]
mov eax, ebx
call fcn.005bfea8
test al, al
je 0x4e11dc
or dword [ebp - 0x38], 0x40
or dword [ebp - 0x38], 2
mov eax, dword [ebx + 0x304]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x2c], edx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x28], edx
xor eax, eax
mov dword [ebp - 0x5c], eax
mov edx, dword [ebp - 0x2c]
mov eax, ebx
call fcn.005b85b8
cmp eax, dword [ebp - 0x28]
jne 0x4e1300
lea edx, [ebp - 0x288]
mov eax, ebx
call fcn.005c0e40
mov eax, dword [ebp - 0x278]
cmp eax, dword [ebp - 0x2c]
je 0x4e1258
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx*4]
cmp byte [eax + 0x3c], 0
jne 0x4e1300
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx*4 + 4]
cmp byte [eax + 0x3c], 0
je 0x4e1300
push 0
mov al, byte [0x4e30a8]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x2c]
mov eax, ebx
call fcn.005bb588
lea ecx, [ebx + 0x34c]
lea eax, [ebp - 0x2c]
mov edx, eax
mov eax, ebx
call fcn.005c04b4
mov byte [ebx + 0x418], 1
mov eax, dword [0x669324]
test byte [eax], 1
setne al
mov byte [ebp - 0xbb], al
mov eax, dword [0x669324]
and word [eax], 0xfffe
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0xbb8
call fcn.004ea098
cmp byte [ebp - 0xbb], 0
je 0x4e12c2
mov eax, dword [0x669324]
or word [eax], 1
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0xec]
mov byte [eax + 0x36], 0xd
mov eax, dword [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [ebp - 0xec]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
call fcn.005423ac
mov byte [ebp - 0xba], 1
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
jmp 0x4e1341
mov eax, dword [ebx + 0x304]
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x2c], edx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x28], edx
mov eax, dword [ebx + 0x304]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebx + 0x304]
mov eax, dword [eax + 4]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x34], edx
mov edx, dword [eax + 0x14]
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x34]
mov eax, ebx
call fcn.005b85b8
cmp eax, dword [ebp - 0x30]
jne 0x4e1358
inc dword [ebp - 0x34]
xor eax, eax
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 0x34]
mov eax, ebx
call fcn.005f3678
mov dword [ebp - 0x34], eax
mov byte [ebx + 0x44b], 1
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x34]
push eax
lea eax, [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x5c]
mov dl, 0x12
mov eax, ebx
call fcn.005c7d88
mov byte [ebx + 0x44b], 0
cmp byte [ebp - 0xba], 0
je case.0x4dfebd.5306
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
or byte [eax + 0x34], 4
mov eax, dword [ebx + 0x304]
mov eax, dword [eax + 4]
mov esi, eax
lea edi, [ebp - 0x1bc]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
lea ecx, [ebp - 0x19c]
mov eax, dword [ebp - 0x1ac]
inc eax
xor edx, edx
call fcn.0053df14
mov eax, dword [0x4e310c]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x18c]
push eax
lea eax, [ebp - 0x38]
push eax
xor ecx, ecx
mov dl, 0x10
mov eax, ebx
call fcn.005c7b10
cmp byte [ebx + 0x461], 0
je case.0x4dfebd.5306
push 0
mov al, byte [0x4e2fb0]
push eax
mov ecx, dword [ebp - 0x1a8]
mov edx, dword [ebp - 0x1ac]
mov eax, ebx
call fcn.005bb588
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
mov dword [ebp - 0xf0], eax
mov eax, dword [ebp - 0xf0]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 4]
mov edi, eax
lea esi, [ebp - 0x1bc]
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xf0]
lea edi, [eax + 0x54]
lea esi, [ebp - 0x1ac]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0xf0]
or byte [eax + 0x34], 4
mov eax, dword [ebp - 0x1ac]
push eax
mov eax, dword [ebp - 0x1a8]
push eax
mov al, byte [0x4e2fb0]
push eax
mov ecx, dword [ebp - 0x1b8]
mov edx, dword [ebp - 0x1bc]
mov eax, ebx
call fcn.005be038
jmp case.0x4dfebd.5306
cmp dword [ebp - 4], 0xdc0
jne 0x4e14b8
lea eax, [ebx + 0x5f8]
call fcn.0049f5b4
test al, al
je case.0x4dfebd.5306
cmp dword [ebp - 4], 0xdc0
je 0x4e14ce
mov eax, ebx
call fcn.005d0ea8
mov dword [ebx + 0x5f8], eax
mov eax, dword [ebx + 0x1ec]
mov dword [ebp - 0xa4], eax
mov eax, dword [ebx + 0x5f8]
mov dword [ebx + 0x1ec], eax
mov dl, 0x2f
mov eax, ebx
call fcn.0055f6b0
mov edx, dword [ebx + 0x5f8]
mov eax, dword [0x669810]
mov eax, dword [eax]
call fcn.0047b0dc
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 4]
sub eax, 0xdc0
je 0x4e151a
sub eax, 0x14
je 0x4e1525
sub eax, 0x14
je 0x4e1530
jmp 0x4e153b
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x40], eax
jmp 0x4e1546
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 8]
mov dword [ebp - 0x40], eax
jmp 0x4e1546
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x40], eax
jmp 0x4e1546
mov eax, dword [ebp - 4]
sub eax, 0x10a4
mov dword [ebp - 0x40], eax
xor ecx, ecx
mov dl, byte [0x4e3110]
mov eax, dword [ebp - 0x48]
call fcn.0047ae6c
mov dword [ebp - 0xf4], eax
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov edx, dword [ebp - 0xf4]
mov edx, dword [edx + 0x18]
mov edx, dword [edx + eax*4]
lea eax, [ebp - 0x9c]
call fcn.004038bc
mov eax, dword [ebp - 0xf4]
call fcn.004028c0
mov eax, dword [0x669810]
mov eax, dword [eax]
cmp byte [eax + 0x21], 0
je 0x4e1666
mov byte [ebp - 0x61], 0x1f
mov eax, dword [ebx + 0x5f8]
call fcn.0062ff90
mov edx, dword [0x669a60]
mov eax, dword [edx + eax*4]
cmp eax, dword [ebp - 0x40]
jg 0x4e15be
mov byte [ebp - 0x61], 0x20
push 0x4e3118
lea edx, [ebp - 0x290]
mov eax, dword [ebp - 0x9c]
call fcn.00655f2c
mov eax, dword [ebp - 0x290]
lea edx, [ebp - 0x28c]
call fcn.0053fdd0
push dword [ebp - 0x28c]
push 0x4e3128
lea eax, [ebp - 0x98]
mov edx, 3
call fcn.00403b88
mov eax, dword [0x669810]
mov eax, dword [eax]
cmp byte [eax + 0x20], 0
je 0x4e164e
push dword [ebp - 0x98]
push 0x4e3130
lea eax, [ebp - 0x28c]
mov edx, dword [0x669810]
mov edx, dword [edx]
movzx edx, byte [edx + 0x20]
mov ecx, dword [0x6698a4]
mov edx, dword [ecx + edx*4]
call fcn.004039d0
push dword [ebp - 0x28c]
lea eax, [ebp - 0x98]
mov edx, 3
call fcn.00403b88
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x61]
mov dl, 0x28
mov eax, ebx
call fcn.005c7adc
jmp 0x4e170c
call fcn.006557f0
add esp, 0xfffffff8
fstp qword [esp]
wait
lea ecx, [ebp - 8]
mov edx, dword [ebx + 0x5f8]
mov eax, dword [ebp - 0x9c]
call fcn.00655d60
mov edx, dword [ebx + 0x5f8]
mov eax, dword [0x6690d0]
mov eax, dword [eax]
call fcn.0046f41c
test byte [eax + 0x30], 4
je 0x4e16c3
lea eax, [ebp - 0x28c]
push eax
mov cx, 0xa0
mov dx, 0x20
mov eax, dword [ebp - 8]
call fcn.006533f0
mov edx, dword [ebp - 0x28c]
lea eax, [ebp - 8]
call fcn.004038bc
lea ecx, [ebp - 0x28c]
mov eax, dword [0x669810]
mov eax, dword [eax]
mov dl, byte [eax + 0x20]
mov eax, dword [ebp - 8]
call fcn.00540e2c
mov eax, dword [ebp - 0x28c]
call fcn.0064d9c0
mov esi, eax
mov eax, dword [0x6691ec]
test byte [eax], 0x20
je 0x4e16f6
or dword [ebp - 0x38], 0x40
lea eax, [ebp - 0x38]
push eax
mov ecx, esi
mov dl, 0xd
mov eax, ebx
call fcn.005c7adc
mov eax, esi
call fcn.004028c0
mov eax, 0x99c
call fcn.0049a860
mov eax, ebx
call fcn.0055f764
mov eax, dword [ebp - 0xa4]
mov dword [ebx + 0x1ec], eax
jmp case.0x4dfebd.5306
mov byte [ebp - 0x61], 0x21
cmp dword [ebp - 4], 0xdf3
jne 0x4e173f
mov byte [ebp - 0x61], 0x1a
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x61]
mov dl, 0x28
mov eax, ebx
call fcn.005c7adc
jmp case.0x4dfebd.5306
call fcn.00429d6c
jmp case.0x4dfebd.5306
mov dl, 1
mov eax, dword [0x53cb08]
call fcn.00559ba0
mov dword [ebp - 0x68], eax
mov edx, dword [0x6690d8]
mov edx, dword [edx + 0x88]
lea eax, [ebp - 0x294]
mov ecx, 0x4e3144
call fcn.00403568
mov edx, dword [ebp - 0x294]
mov eax, dword [ebp - 0x68]
call fcn.0055a17c
mov eax, dword [ebp - 0x68]
call fcn.004b067c
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e17ef
xor edi, edi
mov eax, dword [ebx + 0x300]
call fcn.00542248
mov esi, eax
dec esi
cmp esi, 0
jl 0x4e1802
mov eax, dword [ebx + 0x300]
mov edx, esi
call fcn.00542278
mov edx, dword [eax]
mov eax, ebx
call fcn.0055e4fc
mov edx, dword [eax + 0x584]
mov eax, edi
call fcn.00652c5c
mov edi, eax
dec esi
cmp esi, 0xffffffff
jne 0x4e17c2
jmp 0x4e1802
lea edx, [ebp - 0x304]
mov eax, ebx
call fcn.0055e56c
mov edi, dword [ebp - 0x2a8]
mov eax, dword [0x6690d8]
test byte [eax + 4], 8
jne 0x4e181f
mov edx, edi
mov eax, dword [ebp - 0x68]
call fcn.004b071c
test al, al
je 0x4e192e
mov eax, ebx
call fcn.005bd35c
test al, al
jne 0x4e1869
cmp dword [ebx + 0x25c], 0
jle 0x4e1843
lea eax, [ebp - 0x90]
mov edx, 0x4e316c
call fcn.0040330c
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.005b85b8
dec eax
cmp eax, dword [ebx + 0x25c]
jle 0x4e1869
lea eax, [ebp - 0x94]
mov edx, 0x4e3178
call fcn.0040330c
lea eax, [ebp - 0x8c]
push eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x31c], eax
mov byte [ebp - 0x318], 0xb
lea edx, [ebp - 0x294]
mov eax, dword [ebp - 0x68]
call fcn.0055a258
mov eax, dword [ebp - 0x294]
mov dword [ebp - 0x314], eax
mov byte [ebp - 0x310], 0xb
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0x30c], eax
mov byte [ebp - 0x308], 0xb
lea edx, [ebp - 0x31c]
mov eax, 0x4e3180
mov ecx, 2
call fcn.006550e0
mov byte [ebp - 0x248], 2
mov dword [ebp - 0x244], 0xd20
call fcn.0064d970
mov dword [ebp - 0x234], eax
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x234]
call fcn.0064dc7c
mov eax, dword [0x6693a0]
or word [eax], 0x80
mov byte [ebx + 0x7d8], 0x41
lea ecx, [ebp - 0x248]
mov dl, 0xe
mov eax, ebx
call fcn.005c7acc
mov eax, dword [0x6693a0]
and word [eax], 0xff7f
mov eax, dword [ebp - 0x234]
call fcn.004028c0
mov eax, dword [ebp - 0x68]
call fcn.004028c0
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc7a0
pop ecx
jmp case.0x4dfebd.5306
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
xor ecx, ecx
mov edx, 0x31ed4
call fcn.004eb1b8
jmp case.0x4dfebd.5306
lea edx, [ebp - 0x28c]
mov eax, 0x4e31a8
call fcn.00654410
mov ecx, dword [ebp - 0x28c]
mov edx, dword [0x669700]
mov edx, dword [edx + 4]
lea eax, [ebp - 0xc]
call fcn.00403b24
push 0
mov eax, dword [ebp - 0xc]
push eax
call sub.kernel32.dll_CreateDirectoryW
lea ecx, [ebp - 0xc]
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x31ed4
call fcn.004eb1b8
jmp case.0x4dfebd.5306
call fcn.004dc8b8
jmp case.0x4dfebd.5306
call fcn.004dc948
jmp case.0x4dfebd.5306
mov al, byte [ebp - 4]
sub al, 0x38
call fcn.005fad1c
jmp case.0x4dfebd.5306
call fcn.005fad14
mov dl, byte [ebp - 4]
sub dl, 0x3d
call fcn.0060052c
jmp case.0x4dfebd.5306
call fcn.005fad14
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax + 0x1a8]
mov eax, dword [eax + 0x120]
mov edx, dword [eax]
call dword [edx + 0x34]
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax + 0x1b4]
mov eax, dword [eax + 0x120]
mov edx, dword [eax]
call dword [edx + 0x34]
call fcn.004fe3f4
jmp case.0x4dfebd.5306
call fcn.005fad14
mov dword [ebp - 0xfc], eax
xor edx, edx
mov eax, dword [ebp - 0xfc]
call fcn.005fe854
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax + 0x1cc]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x100]
call fcn.00637604
mov edx, eax
xor dl, 1
mov eax, dword [ebp - 0x100]
call fcn.00637610
jmp case.0x4dfebd.5306
call fcn.005fad14
mov dword [ebp - 0x104], eax
xor edx, edx
mov eax, dword [ebp - 0x104]
call fcn.005fe854
mov eax, dword [ebp - 0x104]
mov eax, dword [eax + 0x1d0]
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x108]
call fcn.00637604
mov edx, eax
xor dl, 1
mov eax, dword [ebp - 0x108]
call fcn.00637610
jmp case.0x4dfebd.5306
call fcn.005fad14
mov dword [ebp - 0x10c], eax
xor edx, edx
mov eax, dword [ebp - 0x10c]
call fcn.005fe854
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x1d4]
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
call fcn.00637604
mov edx, eax
xor dl, 1
mov eax, dword [ebp - 0x110]
call fcn.00637610
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 2], 0x20
je 0x4e1b1c
mov eax, dword [0x6691ec]
and dword [eax], 0xffdfffff
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
or dword [eax], 0x200000
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
and dword [eax], 0xffdfffff
call fcn.005fad14
mov al, byte [eax + 0x20a]
call fcn.005fad1c
mov eax, dword [0x6691ec]
or dword [eax], 0x200000
jmp case.0x4dfebd.5306
mov eax, dword [0x66930c]
mov eax, dword [eax]
call fcn.00604228
jmp case.0x4dfebd.5306
xor edx, edx
xor eax, eax
call fcn.004d2404
jmp case.0x4dfebd.5306
xor edx, edx
xor eax, eax
call fcn.004d2bd0
jmp case.0x4dfebd.5306
or dword [0x66be54], 0x4000
lea eax, [ebp - 0xa0]
mov edx, dword [0x669700]
mov edx, dword [edx + 0xc]
call fcn.004038bc
mov edx, dword [ebx + 0x300]
mov eax, ebx
call fcn.005bd3f4
test al, al
je 0x4e1be4
mov eax, ebx
call fcn.005ee360
mov byte [0x66be5c], al
lea edx, [ebp - 0x28c]
mov eax, 0x4e31b0
call fcn.00654410
mov edx, dword [ebp - 0x28c]
mov eax, dword [0x669700]
add eax, 0xc
call fcn.004038bc
jmp 0x4e1beb
mov byte [0x66be5c], 0xff
cmp dword [ebp - 4], 0xe60
jne 0x4e1bfd
mov eax, ebx
call fcn.00595894
jmp 0x4e1c04
mov eax, ebx
call fcn.0059695c
cmp byte [0x66be5c], 0xff
je 0x4e1c20
mov eax, dword [0x669700]
add eax, 0xc
mov edx, dword [ebp - 0xa0]
call fcn.004038bc
and dword [0x66be54], 0xffffbfff
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.00595f48
jmp case.0x4dfebd.5306
mov eax, dword [0x669858]
mov al, byte [eax]
xor al, 1
mov edx, dword [0x669858]
mov byte [edx], al
mov eax, dword [ebx + 0x174]
call fcn.0044c3d0
call fcn.004fe3fc
mov eax, 0x9d8
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005be83c
mov eax, dword [ebp + 8]
push eax
call fcn.004d8170
pop ecx
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005be8a0
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc4a8
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc554
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc5d4
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc654
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc6a4
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dc744
pop ecx
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005d4ae4
jmp case.0x4dfebd.5306
mov dl, 1
mov eax, ebx
call fcn.005c6690
mov eax, 0x9ec
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005c6850
mov eax, 0xa00
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005c6a10
mov eax, 0x9ec
call fcn.0049a860
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005c6ae4
mov eax, 0xa00
call fcn.0049a860
jmp case.0x4dfebd.5306
lea edx, [ebx + 0x300]
mov eax, ebx
call fcn.005bd750
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
add eax, 0x10
push eax
mov eax, dword [ebx + 0x300]
mov ecx, dword [eax + 4]
mov dl, 0x13
mov eax, ebx
call fcn.005c7adc
jmp case.0x4dfebd.5306
lea edx, [ebx + 0x300]
mov eax, ebx
call fcn.005bd750
mov eax, ebx
call fcn.005c0d10
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0x114]
mov eax, dword [eax + 4]
add eax, 0x10
push eax
mov eax, dword [ebp - 0x114]
mov ecx, dword [eax + 4]
mov dl, 0x14
mov eax, ebx
call fcn.005c7adc
mov eax, dword [ebp - 0x114]
call fcn.005426b4
jmp case.0x4dfebd.5306
lea edx, [ebx + 0x300]
mov eax, ebx
call fcn.005bd750
mov byte [ebp - 0x3a], 1
cmp dword [ebp - 4], 0xf5a
jne 0x4e1dd3
mov byte [ebp - 0x3a], 0
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
add eax, 0x10
push eax
lea eax, [ebp - 0x3a]
push eax
mov eax, dword [ebx + 0x300]
mov ecx, dword [eax + 4]
mov dl, 0x15
mov eax, ebx
call fcn.005c7af4
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005d21f8
mov dword [ebp - 0x118], eax
lea edx, [ebp - 0x288]
mov eax, dword [ebp - 0x118]
call fcn.0054238c
lea edx, [ebp - 0x288]
mov cl, 1
mov eax, ebx
call fcn.005bfd78
test al, al
je 0x4e1e38
mov eax, 0x4e31b8
call fcn.0061f884
jmp 0x4e1e61
mov dword [ebp - 0xac], 1
cmp dword [ebp - 4], 0xf5f
jne 0x4e1e52
sub dword [ebp - 0xac], 2
lea ecx, [ebp - 0xac]
mov dl, 0x16
mov eax, ebx
call fcn.005c7acc
mov eax, dword [ebp - 0x118]
call fcn.005426b4
jmp case.0x4dfebd.5306
mov byte [ebp - 0x39], 0
mov eax, dword [ebp - 4]
cmp eax, 0xfa0
jg 0x4e1e94
je 0x4e1eba
sub eax, 0xf64
je 0x4e1ea2
sub eax, 0x14
je 0x4e1eab
sub eax, 0x14
je 0x4e1eb4
jmp 0x4e1ecc
sub eax, 0xfb4
je 0x4e1ec0
sub eax, 5
je 0x4e1ec6
jmp 0x4e1ecc
mov byte [ebp - 0x17c], 0
jmp 0x4e1ed0
mov byte [ebp - 0x17c], 1
jmp 0x4e1ed0
mov byte [ebp - 0x39], 1
jmp 0x4e1ed0
mov byte [ebp - 0x39], 2
jmp 0x4e1ed0
mov byte [ebp - 0x39], 3
jmp 0x4e1ed0
mov byte [ebp - 0x39], 4
jmp 0x4e1ed0
mov byte [ebp - 0x39], 5
or dword [ebp - 0x38], 2
push 0
lea eax, [ebp - 0x39]
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x17c]
push eax
mov ecx, dword [ebx + 0x300]
mov dl, 0x17
mov eax, ebx
call fcn.005c7d88
jmp case.0x4dfebd.5306
mov eax, dword [0x66956c]
mov eax, dword [eax]
mov edx, 0xfc8
call fcn.0060b780
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005d43e8
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x204]
sub eax, dword [ebx + 0x1fc]
mov edx, dword [ebx + 0x174]
sub eax, dword [edx + 0x284]
sar eax, 1
jns 0x4e1f3a
adc eax, 0
lea ecx, [ebp - 0x324]
mov edx, dword [ebx + 0x210]
call fcn.0064d660
lea edx, [ebp - 0x324]
mov eax, ebx
call fcn.0055c38c
jmp case.0x4dfebd.5306
push ebp
mov eax, dword [ebp - 4]
call fcn.004de08c
pop ecx
jmp case.0x4dfebd.5306
mov eax, dword [0x6693b0]
cmp dword [eax], 0
jne 0x4e1f8c
xor ecx, ecx
mov dl, 1
mov eax, dword [0x4f315c]
call fcn.004f3b78
mov edx, dword [0x6693b0]
mov dword [edx], eax
mov eax, dword [ebx + 0x174]
mov ebx, dword [eax + 0x26c]
lea ecx, [ebp - 0x120]
lea edx, [ebx + 0x194]
mov eax, ebx
call fcn.0063fabc
mov eax, dword [0x6693b0]
mov eax, dword [eax]
mov edx, dword [ebp - 0x120]
sub edx, dword [eax + 0x30]
mov eax, dword [0x6693b0]
mov eax, dword [eax]
mov dword [eax + 0x1a4], edx
lea eax, [ebp - 0x334]
call fcn.0061fdb4
mov eax, dword [ebp - 0x328]
mov edx, dword [0x6693b0]
mov edx, dword [edx]
sub eax, dword [edx + 0x34]
push eax
call fcn.0061feb0
pop edx
sub edx, eax
sub edx, 5
mov eax, dword [ebp - 0x11c]
call fcn.00652c54
mov edx, dword [0x6693b0]
mov edx, dword [edx]
mov dword [edx + 0x1a8], eax
mov eax, dword [0x6693b0]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1a8]
mov eax, dword [0x6693b0]
mov eax, dword [eax]
mov edx, dword [eax + 0x1a4]
mov eax, dword [0x6693b0]
mov eax, dword [eax]
call fcn.0063f89c
mov eax, dword [0x669564]
mov byte [eax], 1
mov eax, dword [0x6693b0]
mov eax, dword [eax]
call fcn.0063c57c
mov eax, dword [0x669564]
mov byte [eax], 0
mov eax, dword [0x6693b0]
mov eax, dword [eax]
mov eax, dword [eax + 0x1a0]
call fcn.00609f94
mov byte [ebx + 0x1c5], 5
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x34]
jmp case.0x4dfebd.5306
mov al, byte [ebp - 4]
sub al, 0x86
mov edx, dword [0x6690d8]
mov byte [edx + 0x6e], al
mov eax, dword [0x6693b0]
mov eax, dword [eax]
call fcn.006400c0
jmp case.0x4dfebd.5306
call fcn.004c28bc
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005e1440
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005e14c8
jmp case.0x4dfebd.5306
mov eax, dword [0x669668]
mov eax, dword [eax]
xor edx, edx
call fcn.004ff84c
jmp case.0x4dfebd.5306
push ebp
call fcn.004de914
pop ecx
jmp case.0x4dfebd.5306
mov eax, dword [0x669668]
mov eax, dword [eax]
call fcn.004ff8cc
jmp case.0x4dfebd.5306
mov eax, dword [0x669668]
mov eax, dword [eax]
call fcn.004ffc68
jmp case.0x4dfebd.5306
mov eax, dword [0x6690d8]
and dword [eax + 4], 0xfffdffff
cmp dword [ebp - 4], 0x11b6
jne 0x4e2113
mov eax, dword [0x6690d8]
or dword [eax + 4], 0x20000
mov eax, dword [0x669118]
mov eax, dword [eax]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x4e214e
mov eax, dword [0x669118]
mov eax, dword [eax]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
cmp dword [eax + 0x838], 0
jl 0x4e2148
mov edx, dword [eax + 0x838]
inc edx
neg edx
mov dword [eax + 0x838], edx
dec esi
cmp esi, 0xffffffff
jne 0x4e2123
call fcn.004fe3f4
jmp case.0x4dfebd.5306
mov eax, dword [0x669668]
mov eax, dword [eax]
call fcn.004ffe00
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005de8cc
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
push eax
push 0x4f14c4
lea ecx, [ebp - 0x324]
xor edx, edx
mov eax, 0x80000000
call fcn.0064d660
lea eax, [ebp - 0x324]
push eax
mov eax, ebx
call fcn.005e0f3c
pop edx
call fcn.004902e4
jmp case.0x4dfebd.5306
mov ecx, dword [ebp - 4]
mov dl, 1
mov eax, dword [0x4adfa8]
call fcn.004aedec
mov dword [ebp - 0x124], eax
mov eax, dword [ebp - 0x124]
call fcn.0063c5d0
mov eax, dword [ebp - 0x124]
call fcn.004028c0
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5a0]
cmp dword [eax + 0x18], 1
jle 0x4e21fb
mov eax, 0x4e3220
mov cl, 0x2a
mov dl, 3
call fcn.0061faa0
cmp ax, 6
jne case.0x4dfebd.5306
mov eax, dword [ebx + 0x5a0]
mov edi, dword [eax + 0x18]
dec edi
test edi, edi
jl case.0x4dfebd.5306
inc edi
xor esi, esi
mov eax, dword [ebx + 0x5a0]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax + esi*4]
mov eax, ebx
call fcn.005e1e3c
inc esi
dec edi
jne 0x4e2210
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005e1fd8
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005e206c
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5c0]
call fcn.0064e144
mov dword [ebx + 0x5c4], 0xffffffff
call fcn.004fe3f4
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5a0]
call fcn.004dca44
jmp case.0x4dfebd.5306
call fcn.00530afc
mov edx, dword [ebx + 0x5a0]
mov dword [eax + 0x30], edx
push ebp
mov eax, dword [ebx + 0x5a0]
call fcn.004dcbe8
pop ecx
call fcn.00530afc
xor edx, edx
mov dword [eax + 0x30], edx
jmp case.0x4dfebd.5306
mov dl, 0x22
mov eax, ebx
call fcn.005c7abc
jmp case.0x4dfebd.5306
mov dl, 0x24
mov eax, ebx
call fcn.005c7abc
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5a0]
call fcn.004dcdd0
jmp case.0x4dfebd.5306
xor eax, eax
call fcn.004dcc7c
jmp case.0x4dfebd.5306
mov al, 1
call fcn.004dcc7c
jmp case.0x4dfebd.5306
call fcn.004dcc54
jmp case.0x4dfebd.5306
call fcn.004dcd64
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5b0]
call fcn.004dca44
jmp case.0x4dfebd.5306
push ebp
mov eax, dword [ebx + 0x5b0]
call fcn.004dcbe8
pop ecx
jmp case.0x4dfebd.5306
mov dl, 0x26
mov eax, ebx
call fcn.005c7abc
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5b0]
call fcn.0064dfd4
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x74]
call fcn.004dca44
mov byte [ebx + 0x7d8], 0x14
mov dl, 0x26
mov eax, ebx
call fcn.005c7abc
mov ecx, dword [ebx + 0x300]
mov dl, 0x10
mov eax, ebx
call fcn.005c7acc
mov eax, dword [ebx + 0x4ac]
call fcn.0064e250
or byte [eax + 0x34], 4
mov eax, dword [ebp - 0x74]
call fcn.0064e5c0
jmp case.0x4dfebd.5306
call fcn.004dcf48
jmp case.0x4dfebd.5306
call fcn.004dcfec
jmp case.0x4dfebd.5306
mov ecx, dword [ebx + 0x59c]
mov dl, 0x2a
mov eax, ebx
call fcn.005c7acc
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x59c]
call fcn.004dca44
jmp case.0x4dfebd.5306
push ebp
mov eax, dword [ebx + 0x59c]
call fcn.004dcbe8
pop ecx
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x59c]
call fcn.004dcdd0
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005bd35c
test al, al
je 0x4e23ef
mov edx, dword [ebx + 0x300]
xor ecx, ecx
mov eax, ebx
call fcn.005e74c4
jmp case.0x4dfebd.5306
lea edx, [ebp - 0x19c]
mov eax, ebx
call fcn.005c0e78
lea ecx, [ebp - 0x19c]
xor edx, edx
mov eax, ebx
call fcn.005e74c4
jmp case.0x4dfebd.5306
xor eax, eax
call fcn.004dea00
jmp case.0x4dfebd.5306
mov al, 1
call fcn.004deb60
jmp case.0x4dfebd.5306
mov al, 2
call fcn.004deb60
jmp case.0x4dfebd.5306
mov ecx, dword [ebx + 0x5ac]
mov dl, 0x3c
mov eax, ebx
call fcn.005c7acc
jmp case.0x4dfebd.5306
mov byte [ebp - 0x81], 2
cmp dword [ebp - 4], 0x13c9
je 0x4e246a
cmp dword [ebp - 4], 0x13cb
je 0x4e246a
cmp dword [ebp - 4], 0x13cc
jne 0x4e2471
mov byte [ebp - 0x81], 1
push ebp
lea eax, [ebp - 0x54]
push eax
lea ecx, [ebp - 0x50]
lea edx, [ebp - 0x4c]
mov al, byte [ebp - 0x81]
call fcn.004dec48
pop ecx
cmp dword [ebp - 0x50], 0
je case.0x4dfebd.5306
mov eax, dword [ebp - 4]
sub eax, 0x13cb
je 0x4e24a7
dec eax
je 0x4e24af
dec eax
je 0x4e24a7
dec eax
je 0x4e24af
jmp 0x4e24b5
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
jmp 0x4e24b5
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x50], eax
cmp dword [ebp - 4], 0x13c9
je 0x4e24c7
cmp dword [ebp - 4], 0x13ca
jne 0x4e24dc
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.0055e038
cmp al, byte [ebp - 0x81]
je 0x4e2503
cmp dword [ebp - 4], 0x13c9
je 0x4e253e
cmp dword [ebp - 4], 0x13ca
je 0x4e253e
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.0055e038
cmp al, byte [ebp - 0x81]
je 0x4e253e
mov eax, dword [ebp - 0x50]
mov edx, dword [eax + 0x44]
mov eax, ebx
call fcn.005e18e4
mov dword [ebp - 0x128], eax
push 0x7fffffff
mov al, byte [0x4e2fb0]
push eax
mov eax, dword [ebp - 0x128]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x128]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
jmp case.0x4dfebd.5306
mov edx, dword [ebp - 0x50]
mov eax, ebx
call fcn.005e18e4
mov dword [ebp - 0x12c], eax
push 0x7fffffff
mov al, byte [0x4e2fb0]
push eax
mov eax, dword [ebp - 0x12c]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov dl, 1
mov eax, ebx
call fcn.005bacb4
jmp case.0x4dfebd.5306
mov al, 1
call fcn.004dea00
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005f7ca8
mov eax, dword [ebx + 0x5a4]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.0055e038
cmp al, 1
jne 0x4e25b1
mov edi, dword [edi + 0x44]
mov edx, edi
mov eax, ebx
call fcn.005e18e4
mov dword [ebp - 0x130], eax
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov eax, dword [ebp - 0x130]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x130]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov dl, 1
mov eax, ebx
call fcn.005bacb4
jmp case.0x4dfebd.5306
mov eax, ebx
call fcn.005f7ca8
mov eax, dword [ebx + 0x5a8]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.0055e038
cmp al, 2
jne 0x4e2617
mov edi, dword [edi + 0x44]
mov edx, edi
mov eax, ebx
call fcn.005e18e4
mov dword [ebp - 0x134], eax
push 0x7fffffff
mov al, byte [0x4e30a8]
push eax
mov eax, dword [ebp - 0x134]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x134]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov dl, 1
mov eax, ebx
call fcn.005bacb4
jmp case.0x4dfebd.5306
call fcn.0064dfa0
mov dword [ebp - 0x78], eax
cmp dword [ebp - 4], 0x13d9
je 0x4e267e
cmp dword [ebp - 4], 0x13de
je 0x4e267e
cmp dword [ebp - 4], 0x13c8
je 0x4e267e
xor eax, eax
jmp 0x4e2680
mov al, 1
mov byte [ebp - 0x82], al
mov eax, dword [ebx + 0x5ac]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x4e26ff
mov eax, dword [ebx + 0x5ac]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax + esi*4]
cmp dword [ebp - 4], 0x13c6
je 0x4e26b5
mov al, byte [edi + 6]
cmp al, byte [ebp - 0x82]
jne 0x4e26f9
cmp dword [ebp - 4], 0x13d8
je 0x4e26e2
cmp dword [ebp - 4], 0x13d9
je 0x4e26e2
cmp dword [ebp - 4], 0x13c6
je 0x4e26e2
cmp dword [ebp - 4], 0x13c7
je 0x4e26e2
cmp dword [ebp - 4], 0x13c8
jne 0x4e26ef
mov edx, dword [edi + 0x44]
mov eax, dword [ebp - 0x78]
call fcn.0064e1f0
jmp 0x4e26f9
mov edx, edi
mov eax, dword [ebp - 0x78]
call fcn.0064e1f0
dec esi
cmp esi, 0xffffffff
jne 0x4e2695
mov eax, dword [ebp - 0x78]
call fcn.004dca44
mov eax, dword [ebp - 0x78]
call fcn.0064e5c0
cmp dword [ebp - 4], 0x13c6
je 0x4e272e
cmp dword [ebp - 4], 0x13c7
je 0x4e272e
cmp dword [ebp - 4], 0x13c8
jne case.0x4dfebd.5306
mov ecx, dword [ebx + 0x300]
mov dl, 0x10
mov eax, ebx
call fcn.005c7acc
jmp case.0x4dfebd.5306
call fcn.004dd0cc
jmp case.0x4dfebd.5306
call fcn.00471640
jmp case.0x4dfebd.5306
call fcn.004dd188
jmp case.0x4dfebd.5306
push ebp
call fcn.004dd2f0
pop ecx
jmp case.0x4dfebd.5306
call fcn.004dd498
jmp case.0x4dfebd.5306
push ebp
call fcn.004dd560
pop ecx
jmp case.0x4dfebd.5306
push ebp
call fcn.004dd708
pop ecx
jmp case.0x4dfebd.5306
call fcn.004c401c
jmp case.0x4dfebd.5306
mov eax, dword [0x6698c8]
cmp byte [eax + 0x1a], 0
jne 0x4e27b3
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x1964
call fcn.004ea098
mov eax, dword [0x6698c8]
test byte [eax + 0x23], 4
je 0x4e27d0
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x191e
call fcn.004ea098
jmp 0x4e27d7
mov al, 0xa
call fcn.0050c320
mov eax, dword [0x669a10]
mov eax, dword [eax]
mov ebx, dword [eax + 0x14c]
lea edx, [ebp - 0x290]
mov eax, 0x4e32a0
call fcn.00654410
mov ecx, dword [ebp - 0x290]
mov edx, dword [0x669700]
mov edx, dword [edx + 4]
lea eax, [ebp - 0x28c]
call fcn.00403b24
mov edx, dword [ebp - 0x28c]
mov eax, dword [0x6692cc]
mov eax, dword [eax]
mov eax, dword [eax + 4]
call fcn.005092d4
mov dword [ebx + 0x130], eax
mov edx, dword [ebx + 0x130]
mov eax, ebx
call fcn.00611234
xor edx, edx
mov eax, dword [ebx + 0x148]
call dword [ebx + 0x144]
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x34]
mov eax, 0x4e32ac
call fcn.0061f884
jmp case.0x4dfebd.5306
xor edx, edx
xor eax, eax
call fcn.004def68
jmp case.0x4dfebd.5306
call fcn.004df1b8
jmp case.0x4dfebd.5306
call fcn.004df3b0
jmp case.0x4dfebd.5306
mov eax, dword [0x6694e0]
mov eax, dword [eax]
call fcn.0049dbac
jmp case.0x4dfebd.5306
mov eax, dword [0x6694e0]
mov eax, dword [eax]
call fcn.0049dc48
jmp case.0x4dfebd.5306
mov eax, dword [0x6690d8]
and dword [eax + 4], 0xfffbffff
cmp dword [ebp - 4], 0x14c3
jne 0x4e28bf
mov eax, dword [0x6690d8]
or dword [eax + 4], 0x40000
mov eax, dword [0x669118]
mov eax, dword [eax]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x4e2901
mov eax, dword [0x669118]
mov eax, dword [eax]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
mov byte [eax + 0x454], 0
cmp dword [eax + 0x840], 0
jl 0x4e28fb
mov edx, dword [eax + 0x840]
inc edx
neg edx
mov dword [eax + 0x840], edx
dec esi
cmp esi, 0xffffffff
jne 0x4e28cf
call fcn.004fe3f4
jmp case.0x4dfebd.5306
mov eax, dword [0x6694e0]
mov eax, dword [eax]
xor edx, edx
call fcn.0049db00
jmp case.0x4dfebd.5306
xor edx, edx
mov al, 1
call fcn.004def68
jmp case.0x4dfebd.5306
mov dl, 1
mov al, 1
call fcn.004def68
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5b4]
call fcn.004dca44
jmp case.0x4dfebd.5306
push ebp
mov eax, dword [ebx + 0x5b4]
call fcn.004dcbe8
pop ecx
jmp case.0x4dfebd.5306
mov ecx, dword [ebx + 0x5b4]
mov dl, 0x2a
mov eax, ebx
call fcn.005c7acc
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5b4]
call fcn.004dcdd0
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 2], 1
je 0x4e299b
mov eax, dword [0x6691ec]
and dword [eax], 0xfffeffff
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
or dword [eax], 0x10000
mov eax, dword [0x669118]
mov eax, dword [eax]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl 0x4e29ce
mov eax, dword [0x669118]
mov eax, dword [eax]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
call fcn.005f7334
dec esi
cmp esi, 0xffffffff
jne 0x4e29b6
mov eax, 0x4e3378
call fcn.0061f884
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 2], 2
je 0x4e29f5
mov eax, dword [0x6691ec]
and dword [eax], 0xfffdffff
jmp 0x4e2a00
mov eax, dword [0x6691ec]
or dword [eax], 0x20000
mov eax, dword [0x669118]
mov eax, dword [eax]
mov esi, dword [eax + 0x18]
dec esi
cmp esi, 0
jl case.0x4dfebd.5306
mov eax, dword [0x669118]
mov eax, dword [eax]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
call fcn.005f7334
dec esi
cmp esi, 0xffffffff
jne 0x4e2a14
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 2], 4
je 0x4e2a4c
mov eax, dword [0x6691ec]
and dword [eax], 0xfffbffff
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
or dword [eax], 0x40000
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
test byte [eax + 2], 8
je 0x4e2a77
mov eax, dword [0x6691ec]
and dword [eax], 0xfff7ffff
jmp case.0x4dfebd.5306
mov eax, dword [0x6691ec]
or dword [eax], 0x80000
jmp case.0x4dfebd.5306
xor eax, eax
mov dword [ebp - 0x1c8], eax
xor eax, eax
mov dword [ebp - 0x1c4], eax
mov esi, dword [ebx + 0x12c]
dec esi
cmp esi, 0
jl 0x4e2b4f
mov edx, esi
mov eax, ebx
call fcn.005f7cc8
test al, al
je 0x4e2b45
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
mov al, byte [eax + 0x3d]
cmp dword [ebp - 4], 0x16b3
je 0x4e2add
cmp dword [ebp - 4], 0x16b5
je 0x4e2add
xor edx, edx
jmp 0x4e2adf
mov dl, 1
cmp al, dl
jne 0x4e2b45
cmp dword [ebp - 4], 0x16b4
je 0x4e2b06
cmp dword [ebp - 4], 0x16b5
je 0x4e2b06
mov eax, dword [ebx + 0x5b8]
mov edx, esi
call fcn.0064e36c
test al, al
je 0x4e2b45
mov eax, dword [ebx + 0xb0]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax + esi*4]
mov dword [ebp - 0x1cc], esi
mov al, byte [edi + 0x3d]
xor al, 1
mov byte [edi + 0x3d], al
mov eax, edi
call fcn.0054d424
test al, al
je 0x4e2b45
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x1c4], eax
dec esi
cmp esi, 0xffffffff
jne 0x4e2aa7
mov byte [ebx + 0x49a], 1
mov dword [ebx + 0x928], 0x80000000
mov edx, dword [ebx + 0x304]
mov eax, dword [ebx + 0x300]
mov ecx, dword [eax]
call dword [ecx]
mov eax, ebx
call fcn.005be678
mov dl, 0xc
mov eax, ebx
call fcn.0055f718
mov eax, dword [ebx + 0x13c]
mov ecx, dword [eax + 0x18]
mov edx, dword [ebp - 0x1c4]
mov eax, ebx
call fcn.005b7cb4
lea ecx, [ebp - 0x324]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.005f7ea4
cmp dword [ebp - 0x324], 0
jge 0x4e2bc5
lea esi, [ebx + 0x258]
lea edi, [ebp - 0x1cc]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x1cc]
xor ecx, ecx
mov eax, ebx
call fcn.005ba5f0
mov eax, ebx
call fcn.0055ce34
lea edx, [ebp - 0x1cc]
mov cl, byte [0x4e2fb0]
mov eax, ebx
call fcn.005bb3b8
xor ecx, ecx
xor edx, edx
mov eax, ebx
call fcn.005b9c24
mov eax, ebx
call fcn.0055f764
mov eax, dword [ebx + 0x174]
call fcn.0044c3d0
call fcn.004fe3f4
jmp case.0x4dfebd.5306
mov eax, dword [ebx + 0x5e0]
cmp dword [eax + 0x18], 0
jne 0x4e2c2c
mov dl, 0x51
mov eax, ebx
call fcn.005c7abc
jmp 0x4e2c3b
mov ecx, dword [ebx + 0x5e0]
mov dl, 0x51
mov eax, ebx
call fcn.005c7acc
mov eax, dword [ebx + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
jmp case.0x4dfebd.5306
mov dl, 0x51
mov eax, ebx
call fcn.005c7abc
mov eax, dword [ebx + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
jmp case.0x4dfebd.5306
call fcn.0064dfa0
mov dword [ebp - 0x7c], eax
mov eax, dword [0x66998c]
mov eax, dword [eax]
mov eax, dword [eax + 0x130]
mov dword [ebp - 0x138], eax
mov eax, dword [ebp - 0x138]
mov eax, dword [eax + 0x120]
mov edx, dword [eax]
call dword [edx + 0xc]
mov edi, eax
dec edi
test edi, edi
jl 0x4e2cc3
inc edi
xor esi, esi
mov edx, esi
mov eax, dword [ebp - 0x138]
call fcn.00638048
test al, al
je 0x4e2cbf
mov eax, dword [ebx + 0x5e0]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax + esi*4]
mov eax, dword [ebp - 0x7c]
call fcn.0064e1f0
inc esi
dec edi
jne 0x4e2c9a
mov ecx, dword [ebp - 0x7c]
mov dl, 0x51
mov eax, ebx
call fcn.005c7acc
mov eax, dword [ebp - 0x7c]
call fcn.0064e5c0
jmp case.0x4dfebd.5306
cmp dword [ebp - 4], 0x14eb
jne 0x4e2cfe
cmp dword [ebx + 0x81c], 0
je 0x4e2cfe
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0x1c20
call fcn.004ea098
mov eax, dword [ebx + 0x300]
call fcn.00542420
mov dword [ebp - 0x60], eax
mov dl, 0x12
mov eax, ebx
call fcn.0055f6b0
mov eax, dword [0x66998c]
mov eax, dword [eax]
mov eax, dword [eax + 0x130]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x13c]
call fcn.00637f30
mov edx, eax
mov eax, dword [ebx + 0x300]
call fcn.00542258
xor eax, eax
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0x13c]
mov eax, dword [eax + 0x120]
mov edx, dword [eax]
call dword [edx + 0xc]
mov edi, eax
dec edi
test edi, edi
jl 0x4e2db3
inc edi
xor esi, esi
mov edx, esi
mov eax, dword [ebp - 0x13c]
call fcn.00638048
test al, al
je 0x4e2daf
mov eax, dword [ebx + 0x5e0]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax + esi*4]
mov eax, ebx
call fcn.005e18e4
push eax
mov eax, dword [ebx + 0x300]
mov edx, dword [ebp - 0xb4]
call fcn.00542278
pop edx
push esi
push edi
mov esi, edx
mov edi, eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
inc dword [ebp - 0xb4]
inc esi
dec edi
jne 0x4e2d63
mov eax, dword [ebx + 0x300]
call fcn.005424b8
mov eax, ebx
call fcn.0055f764
mov eax, ebx
call fcn.005be678
mov eax, dword [ebp - 4]
sub eax, 0x14e9
je 0x4e2ddb
dec eax
je 0x4e2dfb
jmp 0x4e2e26
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0xc94
call fcn.004ea098
mov eax, dword [ebx + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
jmp 0x4e2e91
mov eax, dword [ebp + 8]
mov eax, dword [eax - 4]
mov edx, 0xd0c
call fcn.004ea098
mov eax, dword [ebx + 0x300]
mov edx, dword [ebp - 0x60]
mov ecx, dword [eax]
call dword [ecx]
mov eax, ebx
call fcn.005be678
call fcn.004fe3f4
jmp 0x4e2e91
mov cl, 0x28
mov dl, 0xe
mov eax, ebx
call fcn.0055f6fc
mov eax, dword [ebx + 0x300]
mov eax, dword [eax + 4]
mov dword [ebp - 0x140], eax
push 0x7fffffff
mov al, byte [0x4e2fb0]
push eax
mov eax, dword [ebp - 0x140]
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x140]
mov edx, dword [eax]
mov eax, ebx
call fcn.005bb588
mov eax, ebx
call fcn.0055f764
mov dl, 1
mov eax, ebx
call fcn.005bacb4
mov eax, ebx
call fcn.0055f764
mov eax, ebx
call fcn.005ba250
mov eax, dword [ebx + 0x174]
mov edx, dword [eax]
call dword [edx + 0x68]
call fcn.004fe3f4
mov eax, dword [ebp - 0x60]
call fcn.005426b4
mov eax, dword [ebp + 8]
cmp byte [eax - 5], 0
je 0x4e2f3a
mov eax, dword [0x669324]
test byte [eax + 1], 8
je 0x4e2f3a
call fcn.004d4364
mov ebx, eax
mov eax, ebx
call fcn.005bd35c
test al, al
jne 0x4e2f3a
cmp dword [ebx + 0x258], 0
jle 0x4e2f3a
cmp dword [ebx + 0x25c], 0
jne 0x4e2f3a
mov eax, dword [ebx + 0x258]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4]
cmp byte [eax + 0x3c], 0
je 0x4e2f3a
lea ecx, [ebp - 0x288]
mov edx, dword [ebx + 0x258]
mov eax, ebx
call fcn.005ebd84
mov eax, dword [ebp - 0x288]
cmp eax, dword [ebx + 0x258]
jne 0x4e2f3a
mov eax, dword [ebx + 0x258]
mov edx, dword [ebx + 0xb0]
mov edx, dword [edx + 0x1c]
mov eax, dword [edx + eax*4 - 4]
cmp byte [eax + 0x3c], 0
je 0x4e2f3a
lea ecx, [ebx + 0x258]
mov dl, 0x4c
mov eax, ebx
call fcn.005c7acc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4e2fa8
lea eax, [ebp - 0x294]
call fcn.00403274
lea eax, [ebp - 0x290]
mov edx, 2
call fcn.00403898
lea eax, [ebp - 0x248]
mov edx, dword [0x53dc58]
call fcn.00403f10
lea eax, [ebp - 0xa0]
mov edx, 3
call fcn.00403898
lea eax, [ebp - 0x94]
mov edx, 3
call fcn.00403298
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00403898
ret