Function at 0x5f1bc0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x77c742
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x25c
push ebx
push ebp
push esi
mov esi, ecx
xor eax, eax
push edi
mov dword [esp + 0x10], esi
mov dword [esp + 0x20], eax
push 0x8aad30
mov dword [esp + 0x278], eax
call fcn.00664fc0
mov edi, eax
push 0x8aad18
mov dword [esp + 0x9c], edi
call fcn.00664fc0
mov ebx, eax
push 0x8aad00
mov dword [esp + 0xb0], ebx
call fcn.00664fc0
mov ebp, eax
push 0x8aace4
mov dword [esp + 0xa0], ebp
call fcn.00664fc0
push 0x8aaccc
mov dword [esp + 0x4c], eax
call fcn.00664fc0
push 0x8ab074
mov dword [esp + 0x4c], eax
call fcn.00664fc0
push 0x8a0f04
mov dword [esp + 0x58], eax
call fcn.00664fc0
add esp, 0x1c
test edi, edi
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], 0
jne 0x5f1c94
test ebx, ebx
jne 0x5f1c94
test ebp, ebp
jne 0x5f1c94
cmp dword [esp + 0x38], ebp
jne 0x5f1c94
cmp dword [esp + 0x34], ebp
jne 0x5f1c94
cmp dword [esp + 0x3c], ebp
jne 0x5f1c94
test eax, eax
je 0x5f1d9f
cmp edi, esi
jne 0x5f1cb8
push 0
push 0x980d50
push 0x97128c
push 0
push edi
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp ebx, esi
jne 0x5f1cdc
push 0
push 0x980d50
push 0x97128c
push 0
push ebx
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp ebp, esi
jne 0x5f1d00
push 0
push 0x980d50
push 0x97128c
push 0
push ebp
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp dword [esp + 0x38], esi
jne 0x5f1d27
mov eax, dword [esp + 0x38]
push 0
push 0x980d50
push 0x97128c
push 0
push eax
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp dword [esp + 0x34], esi
jne 0x5f1d4e
mov ecx, dword [esp + 0x34]
push 0
push 0x980d50
push 0x97128c
push 0
push ecx
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp dword [esp + 0x3c], esi
jne 0x5f1d75
mov edx, dword [esp + 0x3c]
push 0
push 0x980d50
push 0x97128c
push 0
push edx
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
jmp 0x5f1d9f
cmp eax, esi
jne 0x5f1d9f
push 0
push 0x980d50
push 0x97128c
push 0
push eax
call fcn.0074d229
add esp, 0x14
mov dword [esp + 0x2c], eax
call fcn.0067bab0
mov dword [esi + 0x280], eax
cmp byte [esi + 0xd1], 0
jne 0x5f1dff
mov ecx, dword [esi + 0x70]
call fcn.0064f480
mov ecx, dword [esi + 0x70]
mov byte [esi + 0xd1], 1
call fcn.0064fa10
test eax, eax
jne 0x5f1ded
mov ecx, dword [esi + 0x70]
call fcn.0064f6a0
cmp dword [esp + 0x298], 0x10
mov byte [esi + 0xd1], 0
jb 0x5f43b6
mov ecx, dword [esp + 0x284]
push ecx
jmp 0x5f43ae
mov edx, dword [esi + 0x70]
add edx, 0x54
push edx
lea ecx, [esi + 0x268]
call fcn.0044cda0
mov eax, dword [esp + 0x29c]
cmp eax, 6
mov edi, dword [esp + 0x2a0]
ja case.0x5f1e16.3
jmp dword [eax*4 + 0x5f43d4]
mov eax, dword [esp + 0x27c]
mov ecx, dword [esi + eax*4 + 0x198]
push ecx
push 0x400
push 0x1b0a700
call fcn.0067acb0
push 0x798830
push 0x1b0a700
call fcn.00409610
push edi
push 0x1b0a700
call fcn.00409610
push 0x8ab0d8
push 0x1b0a700
call fcn.00409610
add esp, 0x24
jmp 0x5f1eee
push 0x8ab0d0
push 0x400
push 0x1b0a700
call fcn.0067acb0
push 0x8ab0c8
jmp 0x5f1e40
push 0x8ab0d0
push 0x400
push 0x1b0a700
call fcn.0067acb0
push 0x798830
push 0x1b0a700
call fcn.00409610
push edi
push 0x1b0a700
call fcn.00409610
push 0x8ab0bc
push 0x1b0a700
call fcn.00409610
add esp, 0x24
jmp 0x5f1eee
push 0x8ab0b0
jmp 0x5f1edc
push 0x8ab0a8
jmp 0x5f1edc
push 0x7958c8
push 0x400
push 0x1b0a700
call fcn.0067acb0
add esp, 0xc
lea edx, [esp + 0x280]
push edx
lea eax, [esp + 0x144]
push 0x1b0a700
push eax
call fcn.00431280
add esp, 0xc
mov eax, dword [esi + 0x244]
sub eax, dword [esi + 0xfc]
mov byte [esp + 0x274], 1
sub eax, 5
cmp dword [esp + 0x28], esi
mov dword [esp + 0xc8], eax
jne 0x5f2080
mov ebx, dword [esp + 0x10]
xor edi, edi
add ebx, 0x268
cmp byte [0x992082], 0
je 0x5f1f53
push 0x1b1cd34
call dword [0x794290]
mov eax, dword [ebx]
test eax, eax
je 0x5f1f5e
mov esi, dword [eax + 0x14]
jmp 0x5f1f60
xor esi, esi
cmp byte [0x992082], 0
je 0x5f1f74
push 0x1b1cd34
call dword [0x79428c]
test esi, esi
je 0x5f1fb4
push 0x895d1c
mov ecx, ebx
call fcn.00439b60
mov ecx, eax
call fcn.0053a2e0
cmp dword [esp + 0x158], 0x10
mov eax, dword [esp + 0x144]
jae 0x5f1fa3
lea eax, [esp + 0x144]
push eax
mov ecx, ebx
call fcn.00439b60
mov ecx, eax
call fcn.0053a2e0
mov edi, eax
mov ebp, dword [esp + 0xc8]
add ebp, 0x50
cmp edi, ebp
jg 0x5f2080
jmp 0x5f1fd0
push 0x895d1c
lea ecx, [esp + 0x144]
push ecx
lea edx, [esp + 0x124]
push edx
call fcn.004b6b80
add esp, 0xc
push 0xffffffffffffffff
push 0
push eax
lea ecx, [esp + 0x14c]
mov byte [esp + 0x280], 2
call fcn.00402580
mov esi, 0x10
cmp dword [esp + 0x134], esi
mov byte [esp + 0x274], 1
jb 0x5f202c
mov eax, dword [esp + 0x120]
push eax
call fcn.0074c96f
add esp, 4
cmp dword [esp + 0x158], esi
mov edi, dword [esp + 0x144]
jae 0x5f2043
lea edi, [esp + 0x144]
cmp byte [0x992082], 0
je 0x5f2057
push 0x1b1cd34
call dword [0x794290]
cmp byte [0x992082], 0
mov ecx, dword [ebx]
mov esi, dword [ecx + 0x14]
je 0x5f2070
push 0x1b1cd34
call dword [0x79428c]
push edi
mov ecx, esi
call fcn.0053a2e0
cmp eax, ebp
jle 0x5f1fd0
mov ebp, dword [esp + 0x10]
lea edx, [esp + 0x140]
push edx
mov ecx, ebp
call fcn.005f0140
cmp dword [esp + 0x29c], 4
jne 0x5f20a5
sub dword [esp + 0xc8], 8
xor esi, esi
lea ecx, [esp + 0x98]
mov dword [esp + 0x1c], esi
mov byte [esp + 0x1b], 1
call fcn.006873e0
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], esi
lea ecx, [esp + 0x40]
mov byte [esp + 0x274], 3
call fcn.005ec2a0
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], esi
mov dword [esp + 0xf4], esi
mov dword [esp + 0xf8], esi
mov eax, dword [0x1b0a694]
mov eax, dword [eax]
mov ecx, 0x1b0a690
mov edi, ecx
mov byte [esp + 0x274], 5
mov byte [esp + 0x27], 0
mov dword [esp + 0xe4], edi
mov ebx, eax
test edi, edi
mov esi, dword [0x1b0a694]
je 0x5f2127
cmp edi, 0x1b0a690
je 0x5f212c
call fcn.0074ca9e
cmp ebx, esi
je 0x5f225c
test edi, edi
jne 0x5f213d
call fcn.0074ca9e
cmp ebx, dword [edi + 4]
jne 0x5f2147
call fcn.0074ca9e
mov edi, dword [ebx + 0xc]
test edi, edi
mov ebp, dword [ebx + 8]
mov dword [esp + 0xec], ebp
mov dword [esp + 0xf0], edi
je 0x5f2192
push 1
lea esi, [edi + 0xc]
push esi
call dword [0x794270]
test eax, eax
je 0x5f2185
nop
push 1
call dword [0x794274]
push 1
push esi
call dword [0x794270]
test eax, eax
jne 0x5f2170
add dword [edi + 4], 1
push 0
push esi
call dword [0x794270]
cmp dword [ebp + 8], 5
mov byte [esp + 0x274], 6
jne 0x5f2226
lea ecx, [esp + 0xec]
push ecx
lea edx, [esp + 0x13c]
push edx
call fcn.005ec370
add esp, 8
mov esi, dword [eax + 4]
test esi, esi
mov ecx, dword [eax]
mov byte [esp + 0x274], 7
mov dword [esp + 0xf4], ecx
je 0x5f21f2
lea edx, [esi + 0xc]
push edx
lea ecx, [esp + 0x18]
call fcn.00435040
mov eax, dword [esp + 0x14]
add dword [esi + 4], 1
push 0
push eax
call dword [0x794270]
mov ecx, dword [esp + 0xf8]
test ecx, ecx
je 0x5f2202
call fcn.00435470
mov ecx, dword [esp + 0x13c]
test ecx, ecx
mov dword [esp + 0xf8], esi
mov byte [esp + 0x274], 6
je 0x5f2221
call fcn.00435470
mov byte [esp + 0x27], 1
test edi, edi
mov byte [esp + 0x274], 5
je 0x5f2239
mov ecx, edi
call fcn.00435470
mov ecx, dword [esp + 0xe4]
cmp ebx, dword [ecx + 4]
jne 0x5f224a
call fcn.0074ca9e
mov ebx, dword [ebx]
mov ebp, dword [esp + 0x10]
mov edi, dword [esp + 0xe4]
jmp 0x5f2115
cmp byte [0x992082], 0
je 0x5f2270
push 0x1b1cd34
call dword [0x794290]
mov eax, dword [ebp + 0x268]
test eax, eax
je 0x5f227f
mov esi, dword [eax + 0x14]
jmp 0x5f2281
xor esi, esi
cmp byte [0x992082], 0
je 0x5f2295
push 0x1b1cd34
call dword [0x79428c]
test esi, esi
je 0x5f3fec
cmp dword [0x1b0a698], 0
jbe 0x5f3fec
lea ebx, [ebx]
mov edx, dword [0x1b0a694]
mov eax, dword [edx]
mov ecx, 0x1b0a690
mov dword [esp + 0xdc], ecx
mov dword [esp + 0xe0], eax
jmp 0x5f22d0
mov ebx, dword [esp + 0xdc]
test ebx, ebx
mov esi, dword [0x1b0a694]
je 0x5f22e9
cmp ebx, 0x1b0a690
je 0x5f22ee
call fcn.0074ca9e
mov edi, dword [esp + 0xe0]
cmp edi, esi
je 0x5f3fdb
test ebx, ebx
jne 0x5f2306
call fcn.0074ca9e
cmp edi, dword [ebx + 4]
jne 0x5f2310
call fcn.0074ca9e
mov eax, dword [edi + 8]
mov edi, dword [edi + 0xc]
test edi, edi
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], edi
je 0x5f2356
mov ebx, dword [0x794270]
push 1
lea esi, [edi + 0xc]
push esi
call ebx
test eax, eax
je 0x5f234d
mov ebp, dword [0x794274]
push 1
call ebp
push 1
push esi
call ebx
test eax, eax
jne 0x5f2340
add dword [edi + 4], 1
push 0
push esi
call ebx
mov ecx, dword [esp + 0xcc]
mov eax, dword [ecx + 8]
sub eax, 1
mov byte [esp + 0x274], 8
je 0x5f25f9
sub eax, 2
je 0x5f25b4
sub eax, 1
jne 0x5f2699
lea edx, [esp + 0xcc]
push edx
lea eax, [esp + 0x118]
push eax
call fcn.005ec3d0
add esp, 8
mov esi, dword [esp + 0x114]
cmp dword [esi + 0x24], 0x10
mov byte [esp + 0x274], 0xa
jb 0x5f23b5
mov ebp, dword [esi + 0x10]
jmp 0x5f23b8
lea ebp, [esi + 0x10]
cmp byte [0x992082], 0
je 0x5f23d3
push 0x1b1cd34
call dword [0x794290]
mov esi, dword [esp + 0x114]
cmp byte [0x992082], 0
mov ebx, dword [esp + 0x10]
mov ecx, dword [ebx + 0x268]
mov edi, dword [ecx + 0x14]
je 0x5f23fb
push 0x1b1cd34
call dword [0x79428c]
mov esi, dword [esp + 0x114]
push ebp
mov ecx, edi
call fcn.0053a2e0
mov dword [esi + 4], eax
xor eax, eax
xor ebp, ebp
mov dword [esp + 0x1cc], 0xf
mov dword [esp + 0x1c8], ebp
mov byte [esp + 0x1b8], 0
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1b0], eax
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x114]
mov dword [esp + 0x1a4], ecx
mov edx, dword [eax + 4]
add edx, ecx
mov ecx, dword [ebx + 0x104]
push 0xffffffffffffffff
add eax, 0x28
push ebp
mov dword [esp + 0x1b8], ecx
push eax
lea ecx, [esp + 0x1c0]
mov byte [esp + 0x280], 0xb
mov dword [esp + 0x1b8], edx
mov dword [esp + 0x1b4], ebp
call fcn.00402580
mov ecx, dword [esp + 0x114]
mov eax, 1
add ecx, 0x4c
lea esp, [esp]
mov edx, dword [ecx]
mov dword [esp + eax*4 + 0x1d0], edx
add eax, 1
add ecx, 4
cmp eax, 0x27
jl 0x5f24a0
mov eax, dword [esp + 0x44]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x1a4]
push ecx
push edx
push eax
lea ecx, [esp + 0x4c]
call fcn.005ee4b0
push 1
lea ecx, [esp + 0x44]
mov esi, eax
call fcn.005eddc0
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
cmp dword [esp + 0x1cc], 0x10
jb 0x5f24ff
mov eax, dword [esp + 0x1b8]
push eax
call fcn.0074c96f
add esp, 4
mov esi, dword [esp + 0x118]
cmp esi, ebp
mov dword [esp + 0x1cc], 0xf
mov dword [esp + 0x1c8], ebp
mov byte [esp + 0x1b8], 0
mov byte [esp + 0x274], 8
je 0x5f2699
mov ebx, dword [0x794270]
mov edi, esi
push 1
add esi, 0xc
push esi
call ebx
test eax, eax
mov ebp, dword [0x794274]
je 0x5f255d
lea ebx, [ebx]
push 1
call ebp
push 1
push esi
call ebx
test eax, eax
jne 0x5f2550
add dword [edi + 4], 0xffffffff
cmp dword [edi + 4], 0
push 0
push esi
je 0x5f2571
call ebx
jmp 0x5f2699
call ebx
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
push 1
push esi
call ebx
test eax, eax
je 0x5f2592
push 1
call ebp
push 1
push esi
call ebx
test eax, eax
jne 0x5f2585
add dword [edi + 8], 0xffffffff
mov ebp, dword [edi + 8]
push 0
push esi
call ebx
test ebp, ebp
jne 0x5f2699
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
jmp 0x5f2699
lea ecx, [esp + 0xcc]
push ecx
lea edx, [esp + 0x13c]
push edx
call fcn.005ec3a0
mov eax, dword [esp + 0x140]
mov edx, dword [esp + 0x18]
mov ecx, dword [eax + 0xc]
mov edx, dword [edx + 0x70]
mov edx, dword [edx + 0xb4]
add esp, 8
shl ecx, 4
mov ecx, dword [ecx + edx + 8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x13c]
jmp 0x5f2690
lea edx, [esp + 0xcc]
push edx
lea eax, [esp + 0x170]
push eax
call fcn.005ec2e0
add esp, 8
mov esi, dword [esp + 0x16c]
cmp dword [esi + 0x24], 0x10
mov byte [esp + 0x274], 9
jb 0x5f262b
mov ebp, dword [esi + 0x10]
jmp 0x5f262e
lea ebp, [esi + 0x10]
cmp byte [0x992082], 0
je 0x5f2649
push 0x1b1cd34
call dword [0x794290]
mov esi, dword [esp + 0x16c]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x268]
mov edi, dword [ecx + 0x14]
add eax, 0x268
cmp byte [0x992082], 0
je 0x5f2676
push 0x1b1cd34
call dword [0x79428c]
mov esi, dword [esp + 0x16c]
push ebp
mov ecx, edi
call fcn.0053a2e0
mov dword [esi + 4], eax
mov ecx, dword [esp + 0x170]
mov byte [esp + 0x274], 8
test ecx, ecx
je 0x5f2699
call fcn.00435470
mov ebx, dword [esp + 0xcc]
mov edx, dword [ebx + 4]
add edx, dword [esp + 0x1c]
lea ecx, [esp + 0xcc]
cmp edx, dword [esp + 0xc8]
push ecx
jg 0x5f327b
mov eax, dword [esp + 0xa0]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
push edx
push eax
lea ecx, [esp + 0xa4]
call fcn.0045ab40
push 1
lea ecx, [esp + 0x9c]
mov esi, eax
call fcn.00687760
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov eax, dword [ebx + 4]
mov ebx, dword [esp + 0xe0]
mov esi, dword [esp + 0xdc]
add dword [esp + 0x1c], eax
cmp ebx, dword [esi + 4]
mov dword [esp + 0x100], ebx
jne 0x5f2714
call fcn.0074ca9e
cmp ebx, dword [0x1b0a694]
mov edi, dword [ebx]
je 0x5f2747
mov eax, dword [ebx + 4]
mov dword [eax], edi
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [ecx + 4], edx
mov ecx, dword [ebx + 0xc]
test ecx, ecx
je 0x5f2737
call fcn.00435470
push ebx
call fcn.0074c96f
add esp, 4
sub dword [0x1b0a698], 1
cmp esi, 0x1b0a690
mov ebp, dword [0x1b0a694]
mov dword [esp + 0xdc], esi
mov dword [esp + 0xe0], edi
je 0x5f2768
call fcn.0074ca9e
cmp edi, ebp
jne 0x5f3fb4
push 0x50
call fcn.0074caae
add esp, 4
cmp byte [esp + 0x1b], 0
mov dword [esp + 0xfc], eax
je 0x5f2f87
xor edi, edi
cmp eax, edi
mov byte [esp + 0x274], 0xc
je 0x5f27bb
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [esp + 0x280]
lea edx, [esp + 0x144]
push edx
push ecx
mov ecx, eax
call fcn.005f0c00
jmp 0x5f27bd
xor eax, eax
lea esi, [eax + 0x44]
lea edx, [esp + 0x40]
cmp esi, edx
mov dword [esp + 0x14], eax
mov byte [esp + 0x274], 8
mov byte [esp + 0x1b], 0
je 0x5f280c
mov eax, dword [esp + 0x44]
mov ebx, dword [eax]
mov ecx, esi
mov edi, eax
mov ebp, edx
call fcn.005ee3c0
mov eax, dword [esi + 4]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc4]
push eax
push edi
push ebp
push ebx
mov eax, ebp
push eax
push ecx
push esi
mov ecx, esi
call fcn.005f06c0
mov eax, dword [esp + 0x14]
xor edi, edi
cmp byte [esp + 0x2a4], 0
je 0x5f2824
mov ecx, dword [esp + 0x2a8]
mov byte [eax + 0x28], 0
mov dword [eax + 0x24], ecx
mov esi, dword [esp + 0x10]
cmp dword [esp + 0x2c], esi
jne 0x5f2e3b
mov ebx, dword [esp + 0x2a0]
xor eax, eax
cmp ebx, edi
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], edi
mov byte [esp + 0x60], 0
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], edi
mov byte [esp + 0x8c], al
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
je 0x5f2cdc
mov eax, ebx
mov byte [esp + 0x274], 0xd
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f2895
sub eax, edx
add eax, 4
push eax
call fcn.0073b9f0
mov ebp, eax
mov eax, ebx
add esp, 4
mov dword [esp + 0x1c], ebp
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f28b7
sub eax, edx
push 0x798830
add eax, 4
push eax
push ebp
call fcn.0067acb0
mov eax, ebx
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x5f28d8
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
lea ebx, [ebx]
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x5f28f0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
add edi, 0xffffffff
lea ecx, [ecx]
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x5f2910
mov dx, word [0x798834]
mov word [edi], dx
mov byte [esp + 0xac], al
mov eax, ebp
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], 0
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f2946
sub eax, edx
push eax
push ebp
lea ecx, [esp + 0xb0]
call fcn.00402660
cmp dword [esp + 0xc0], 0x10
mov eax, dword [esp + 0xac]
mov byte [esp + 0x274], 0xe
jae 0x5f297f
lea eax, [esp + 0xac]
mov ecx, dword [esp + 0xbc]
push ecx
push 0
push eax
lea ecx, [esp + 0x14c]
call fcn.0040f2a0
mov ebp, eax
mov eax, ebx
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f29a0
sub eax, edx
push eax
push ebx
lea ecx, [esp + 0x64]
call fcn.00402660
mov edx, dword [esp + 0x27c]
mov edi, dword [0x794290]
add edx, 0xffffffff
cmp edx, 4
ja 0x5f2a76
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov al, byte [0x992082]
test al, al
mov edx, dword [esp + 0x10]
lea esi, [edx + ecx*4 + 0x200]
je 0x5f29f6
push 0x1ab9950
call edi
mov al, byte [0x992082]
test al, al
mov esi, dword [esi]
mov ebx, dword [0x79428c]
je 0x5f2a0e
push 0x1ab9950
call ebx
mov al, byte [0x992082]
test esi, esi
je 0x5f2a55
test al, al
je 0x5f2a22
push 0x1b1cd34
call edi
mov al, byte [0x992082]
test al, al
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x268]
mov esi, dword [edx + 0x14]
je 0x5f2a3a
push 0x1b1cd34
call ebx
push 0x798830
mov ecx, esi
call fcn.0053a2e0
imul eax, ebp
mov ecx, dword [esp + 0x10]
add eax, dword [ecx + 0x1cc]
jmp 0x5f2ab8
test al, al
je 0x5f2a65
push 0x1b1cd34
call edi
mov al, byte [0x992082]
mov edx, dword [esp + 0x10]
mov ecx, dword [edx + 0x268]
mov esi, dword [ecx + 0x14]
test al, al
jmp 0x5f2aa0
cmp byte [0x992082], 0
je 0x5f2a86
push 0x1b1cd34
call edi
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x268]
mov esi, dword [eax + 0x14]
mov ebx, dword [0x79428c]
cmp byte [0x992082], 0
je 0x5f2aa9
push 0x1b1cd34
call ebx
push 0x798830
mov ecx, esi
call fcn.0053a2e0
imul eax, ebp
xor ebp, ebp
cmp byte [0x992082], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], ebp
je 0x5f2ad2
push 0x1b1cd34
call edi
cmp byte [0x992082], 0
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x268]
mov esi, dword [ecx + 0x14]
je 0x5f2aef
push 0x1b1cd34
call ebx
mov ebx, dword [esp + 0x1c]
push ebx
mov ecx, esi
call fcn.0053a2e0
add eax, dword [esp + 0x4c]
cmp byte [esp + 0x27], 0
mov edx, dword [edi + 0x104]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
je 0x5f2b53
mov eax, dword [esp + 0xf4]
cmp eax, ebp
je 0x5f2b53
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 0x18]
mov dword [esp + 0x84], edx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x7c], ecx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x80], edx
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x88], eax
mov byte [esp + 0x8c], 1
cmp edi, dword [esp + 0x94]
jne 0x5f2b92
mov eax, dword [0x1b0a6dc]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2c7f
cmp edi, dword [esp + 0xa4]
jne 0x5f2bd1
mov eax, dword [0x1b0a6f4]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2c7f
cmp edi, dword [esp + 0x90]
jne 0x5f2c0d
mov eax, dword [0x1b0a6e8]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6e4
call fcn.005ee820
push 1
mov ecx, 0x1b0a6e4
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2c7f
cmp edi, dword [esp + 0x38]
jne 0x5f2c46
mov eax, dword [0x1b0a6a4]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6a0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6a0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2c7f
cmp edi, dword [esp + 0x34]
jne 0x5f2c58
lea eax, [esp + 0x4c]
push eax
mov ecx, 0x1b0a6c4
jmp 0x5f2c7a
cmp edi, dword [esp + 0x3c]
jne 0x5f2c6a
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a670
jmp 0x5f2c7a
cmp edi, dword [esp + 0x28]
jne 0x5f2c7f
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a6b8
call fcn.005f09f0
push ebx
call fcn.0074dd4b
mov esi, 0x10
add esp, 4
cmp dword [esp + 0xc0], esi
jb 0x5f2ca6
mov eax, dword [esp + 0xac]
push eax
call fcn.0074c96f
add esp, 4
cmp dword [esp + 0x74], esi
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], ebp
mov byte [esp + 0xac], 0
mov byte [esp + 0x274], 8
jb 0x5f2e3b
mov ecx, dword [esp + 0x60]
push ecx
jmp 0x5f2e33
push edi
push 0x7958c8
lea ecx, [esp + 0x64]
mov byte [esp + 0x27c], 0xf
call fcn.00402660
cmp esi, dword [esp + 0x94]
jne 0x5f2d32
mov eax, dword [0x1b0a6dc]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2e1f
cmp esi, dword [esp + 0xa4]
jne 0x5f2d71
mov eax, dword [0x1b0a6f4]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2e1f
cmp esi, dword [esp + 0x90]
jne 0x5f2dad
mov eax, dword [0x1b0a6e8]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6e4
call fcn.005ee820
push 1
mov ecx, 0x1b0a6e4
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2e1f
cmp esi, dword [esp + 0x38]
jne 0x5f2de6
mov eax, dword [0x1b0a6a4]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6a0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6a0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f2e1f
cmp esi, dword [esp + 0x34]
jne 0x5f2df8
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a6c4
jmp 0x5f2e1a
cmp esi, dword [esp + 0x3c]
jne 0x5f2e0a
lea eax, [esp + 0x4c]
push eax
mov ecx, 0x1b0a670
jmp 0x5f2e1a
cmp esi, dword [esp + 0x28]
jne 0x5f2e1f
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6b8
call fcn.005f09f0
cmp dword [esp + 0x74], 0x10
mov byte [esp + 0x274], 8
jb 0x5f2e3b
mov edx, dword [esp + 0x60]
push edx
call fcn.0074c96f
add esp, 4
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax]
mov dword [eax], eax
mov eax, dword [esp + 0x9c]
mov dword [eax + 4], eax
cmp ecx, dword [esp + 0x9c]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xa0], 0
je 0x5f2f23
mov ebx, dword [0x794270]
mov ebp, dword [0x794274]
jmp 0x5f2e80
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0xc]
test esi, esi
mov ecx, dword [eax]
mov dword [esp + 0xfc], ecx
je 0x5f2efe
push 1
lea edi, [esi + 0xc]
push edi
call ebx
test eax, eax
je 0x5f2ead
push 1
call ebp
push 1
push edi
call ebx
test eax, eax
jne 0x5f2ea0
add dword [esi + 4], 0xffffffff
cmp dword [esi + 4], 0
push 0
push edi
je 0x5f2ebe
call ebx
jmp 0x5f2efe
call ebx
mov edx, dword [esi]
mov eax, dword [edx + 4]
mov ecx, esi
call eax
push 1
push edi
call ebx
test eax, eax
je 0x5f2edf
push 1
call ebp
push 1
push edi
call ebx
test eax, eax
jne 0x5f2ed2
add dword [esi + 8], 0xffffffff
mov ebp, dword [esi + 8]
push 0
push edi
call ebx
test ebp, ebp
jne 0x5f2ef8
mov edx, dword [esi]
mov eax, dword [edx + 8]
mov ecx, esi
call eax
mov ebp, dword [0x794274]
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.0074c96f
mov eax, dword [esp + 0x100]
add esp, 4
cmp eax, dword [esp + 0x9c]
mov dword [esp + 0x1c], eax
jne 0x5f2e80
lea ecx, [esp + 0x40]
call fcn.005ee3c0
mov eax, dword [esp + 0x14]
mov byte [esp + 0x184], 0
mov edx, dword [esp + 0x184]
push edx
push eax
lea ecx, [esp + 0x170]
mov dword [esp + 0x24], 0
mov dword [esp + 0x16c], eax
call fcn.005f1a80
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x164]
push eax
add ecx, 0x124
mov byte [esp + 0x278], 0x10
call fcn.005f0960
mov ecx, dword [esp + 0x168]
jmp 0x5f3fa3
xor edi, edi
cmp eax, edi
je 0x5f2fde
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], edi
mov byte [esp + 0xac], 0
or dword [esp + 0x20], 1
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [esp + 0x280]
lea edx, [esp + 0xac]
add ecx, 0xb
push edx
push ecx
mov ecx, eax
mov byte [esp + 0x280], 0x12
call fcn.005f0c00
mov ebp, eax
mov dword [esp + 0x14], eax
jmp 0x5f2fe4
xor ebp, ebp
mov dword [esp + 0x14], ebp
test byte [esp + 0x20], 1
mov dword [esp + 0x274], 8
je 0x5f302f
and dword [esp + 0x20], 0xfffffffe
cmp dword [esp + 0xc0], 0x10
jb 0x5f3015
mov edx, dword [esp + 0xac]
push edx
call fcn.0074c96f
add esp, 4
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], edi
mov byte [esp + 0xac], 0
lea esi, [ebp + 0x44]
lea eax, [esp + 0x40]
cmp esi, eax
je 0x5f306f
mov eax, dword [esp + 0x44]
mov ebx, dword [eax]
mov ecx, esi
mov edi, eax
lea ebp, [esp + 0x40]
call fcn.005ee3c0
mov edx, dword [esp + 0xc4]
mov eax, dword [esi + 4]
mov ecx, dword [eax]
push edx
push edi
push ebp
push ebx
mov eax, ebp
push eax
push ecx
push esi
mov ecx, esi
call fcn.005f06c0
mov ebp, dword [esp + 0x14]
xor edi, edi
cmp byte [esp + 0x2a4], 0
je 0x5f3087
mov eax, dword [esp + 0x2a8]
mov byte [ebp + 0x28], 0
mov dword [ebp + 0x24], eax
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x2c], ebx
jne 0x5f3215
xor eax, eax
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], edi
mov byte [esp + 0x60], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], edi
mov byte [esp + 0x8c], al
push edi
push 0x7958c8
lea ecx, [esp + 0x64]
mov byte [esp + 0x27c], 0x14
call fcn.00402660
cmp ebx, dword [esp + 0x94]
jne 0x5f3134
mov eax, dword [0x1b0a6dc]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f31f9
cmp ebx, dword [esp + 0xa4]
jne 0x5f3175
mov eax, dword [0x1b0a6f4]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f31f9
cmp ebx, dword [esp + 0x90]
jne 0x5f31b3
mov eax, dword [0x1b0a6e8]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6e4
call fcn.005ee820
push 1
mov ecx, 0x1b0a6e4
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f31f9
cmp ebx, dword [esp + 0x38]
jne 0x5f31c0
mov ecx, 0x1b0a6a0
jmp 0x5f31ef
cmp ebx, dword [esp + 0x34]
jne 0x5f31d2
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6c4
jmp 0x5f31f4
cmp ebx, dword [esp + 0x3c]
jne 0x5f31e4
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a670
jmp 0x5f31f4
cmp ebx, dword [esp + 0x28]
jne 0x5f31f9
mov ecx, 0x1b0a6b8
lea eax, [esp + 0x4c]
push eax
call fcn.005f09f0
cmp dword [esp + 0x74], 0x10
mov byte [esp + 0x274], 8
jb 0x5f3215
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0074c96f
add esp, 4
lea ecx, [esp + 0x98]
call fcn.0045ae20
lea ecx, [esp + 0x40]
call fcn.005ee3c0
mov byte [esp + 0x188], 0
mov edx, dword [esp + 0x188]
push edx
push ebp
lea ecx, [esp + 0x168]
mov dword [esp + 0x24], edi
mov dword [esp + 0x164], ebp
call fcn.005f1a80
lea eax, [esp + 0x15c]
push eax
lea ecx, [ebx + 0x124]
mov byte [esp + 0x278], 0x15
call fcn.005f0960
mov ecx, dword [esp + 0x160]
cmp ecx, edi
jmp 0x5f3fa5
lea edx, [esp + 0x110]
push edx
call fcn.005ec2e0
add esp, 8
cmp dword [esp + 0x10c], 0
mov byte [esp + 0x274], 0x16
je 0x5f3648
push 0x2c
call fcn.0074caae
add esp, 4
mov dword [esp + 0xfc], eax
xor esi, esi
cmp eax, esi
lea edi, [esi + 0xf]
je 0x5f32f5
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], esi
mov byte [esp + 0x120], 0
or dword [esp + 0x20], 2
push 0xfffffffffffffff6
lea ecx, [esp + 0x120]
push ecx
mov ecx, eax
mov byte [esp + 0x27c], 0x18
call fcn.005edf90
mov dword [esp + 0x14], eax
jmp 0x5f32f9
mov dword [esp + 0x14], esi
test byte [esp + 0x20], 2
mov dword [esp + 0x274], 0x16
je 0x5f3340
and dword [esp + 0x20], 0xfffffffd
cmp dword [esp + 0x134], 0x10
jb 0x5f332a
mov edx, dword [esp + 0x120]
push edx
call fcn.0074c96f
add esp, 4
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], esi
mov byte [esp + 0x120], 0
mov dword [esp + 0xc0], edi
mov dword [esp + 0xbc], esi
mov byte [esp + 0xac], 0
mov byte [esp + 0x274], 0x1a
mov edi, edi
lea ecx, [esp + 0xa8]
call fcn.00460a80
mov eax, dword [esp + 0x10c]
add eax, 0xc
cmp dword [eax + 0x18], 0x10
jb 0x5f3381
mov ecx, dword [eax + 4]
jmp 0x5f3384
lea ecx, [eax + 4]
push eax
push ecx
lea ecx, [esp + 0x10c]
call fcn.004055c0
mov esi, dword [esp + 0x104]
cmp esi, 0xfffffffe
mov ebx, dword [esp + 0x108]
je 0x5f33ca
test esi, esi
jne 0x5f33ae
call fcn.0074ca9e
cmp dword [esi + 0x18], 0x10
jb 0x5f33b9
mov eax, dword [esi + 4]
jmp 0x5f33bc
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebx, ecx
jb 0x5f33ca
call fcn.0074ca9e
mov dl, byte [ebx]
mov byte [esp + 0x194], dl
mov eax, dword [esp + 0x194]
push eax
push 1
lea ecx, [esp + 0xb0]
call fcn.0040faa0
cmp esi, 0xfffffffe
mov byte [esp + 0x33], 0
je 0x5f3418
test esi, esi
jne 0x5f33fc
call fcn.0074ca9e
cmp dword [esi + 0x18], 0x10
jb 0x5f3407
mov eax, dword [esi + 4]
jmp 0x5f340a
lea eax, [esi + 4]
mov ecx, dword [esi + 0x14]
add ecx, eax
cmp ebx, ecx
jb 0x5f3418
call fcn.0074ca9e
movsx edx, byte [ebx]
push edx
call fcn.007511d3
add esp, 4
test eax, eax
je 0x5f34a5
push 1
lea ecx, [esp + 0x180]
mov dword [esp + 0x180], esi
mov dword [esp + 0x184], ebx
call fcn.00428710
mov edi, dword [esp + 0x17c]
cmp edi, 0xfffffffe
mov ebp, dword [esp + 0x180]
je 0x5f3480
test edi, edi
jne 0x5f3464
call fcn.0074ca9e
cmp dword [edi + 0x18], 0x10
jb 0x5f346f
mov eax, dword [edi + 4]
jmp 0x5f3472
lea eax, [edi + 4]
mov ecx, dword [edi + 0x14]
add ecx, eax
cmp ebp, ecx
jb 0x5f3480
call fcn.0074ca9e
mov dl, byte [ebp]
mov byte [esp + 0x198], dl
mov eax, dword [esp + 0x198]
push eax
push 1
lea ecx, [esp + 0xb0]
call fcn.0040faa0
mov byte [esp + 0x33], 1
cmp dword [esp + 0xc0], 0x10
mov ebp, dword [esp + 0xac]
jae 0x5f34bd
lea ebp, [esp + 0xac]
cmp byte [0x992082], 0
je 0x5f34d1
push 0x1b1cd34
call dword [0x794290]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x268]
mov edi, dword [ecx + 0x14]
add eax, 0x268
cmp byte [0x992082], 0
je 0x5f34f7
push 0x1b1cd34
call dword [0x79428c]
push 1
push ebp
mov ecx, edi
call fcn.005394c0
mov ecx, dword [esp + 0x1c]
add ecx, eax
cmp ecx, dword [esp + 0xc8]
mov dword [esp + 0x1c], ecx
jge 0x5f35a4
mov ecx, dword [esp + 0x10c]
push ebx
push esi
lea edx, [esp + 0x1a4]
push edx
add ecx, 0xc
call fcn.0040fa10
cmp byte [esp + 0x33], 0
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], edx
je 0x5f357b
mov ecx, edx
mov edx, dword [eax]
push ecx
mov ecx, dword [esp + 0x110]
push edx
lea eax, [esp + 0xdc]
push eax
add ecx, 0xc
call fcn.0040fa10
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x104], ecx
mov dword [esp + 0x108], edx
mov ecx, dword [esp + 0x14]
push 0xffffffffffffffff
push 0
lea eax, [esp + 0xb0]
push eax
add ecx, 0xc
call fcn.00430650
mov ecx, dword [esp + 0x10c]
cmp dword [ecx + 0x20], 0
ja 0x5f3360
mov eax, dword [esp + 0x14]
mov byte [esp + 0x190], 0
mov edx, dword [esp + 0x190]
push edx
push eax
lea ecx, [esp + 0x180]
mov dword [esp + 0x17c], eax
call fcn.005ee080
mov eax, dword [esp + 0x9c]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x174]
push ecx
push edx
push eax
lea ecx, [esp + 0xa4]
mov byte [esp + 0x280], 0x1b
call fcn.0045ab40
push 1
lea ecx, [esp + 0x9c]
mov esi, eax
call fcn.00687760
mov ecx, dword [esp + 0x178]
test ecx, ecx
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
mov byte [esp + 0x274], 0x1a
je 0x5f3626
call fcn.00435470
cmp dword [esp + 0xc0], 0x10
mov byte [esp + 0x274], 0x16
jb 0x5f3648
mov eax, dword [esp + 0xac]
push eax
call fcn.0074c96f
add esp, 4
push 0x50
call fcn.0074caae
add esp, 4
cmp byte [esp + 0x1b], 0
mov dword [esp + 0xfc], eax
je 0x5f3c9e
xor edi, edi
cmp eax, edi
mov byte [esp + 0x274], 0x1c
je 0x5f3693
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [esp + 0x280]
lea edx, [esp + 0x144]
push edx
push ecx
mov ecx, eax
call fcn.005f0c00
jmp 0x5f3695
xor eax, eax
lea esi, [eax + 0x44]
lea edx, [esp + 0x40]
cmp esi, edx
mov dword [esp + 0x14], eax
mov byte [esp + 0x274], 0x16
mov byte [esp + 0x1b], 0
je 0x5f36e4
mov eax, dword [esp + 0x44]
mov ebx, dword [eax]
mov ecx, esi
mov edi, eax
mov ebp, edx
call fcn.005ee3c0
mov eax, dword [esi + 4]
mov ecx, dword [eax]
mov eax, dword [esp + 0xc4]
push eax
push edi
push ebp
push ebx
mov eax, ebp
push eax
push ecx
push esi
mov ecx, esi
call fcn.005f06c0
mov eax, dword [esp + 0x14]
xor edi, edi
cmp byte [esp + 0x2a4], 0
je 0x5f36fc
mov ecx, dword [esp + 0x2a8]
mov byte [eax + 0x28], 0
mov dword [eax + 0x24], ecx
mov esi, dword [esp + 0x10]
cmp dword [esp + 0x2c], esi
jne 0x5f3c2c
mov ebx, dword [esp + 0x2a0]
xor eax, eax
cmp ebx, edi
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], edi
mov byte [esp + 0x60], 0
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], edi
mov byte [esp + 0x8c], al
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
je 0x5f3b23
mov eax, ebx
mov byte [esp + 0x274], 0x1d
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f3770
sub eax, edx
add eax, 4
push eax
call fcn.0073b9f0
mov ebp, eax
mov eax, ebx
add esp, 4
mov dword [esp + 0x1c], ebp
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f3792
sub eax, edx
push 0x798830
add eax, 4
push eax
push ebp
call fcn.0067acb0
mov eax, ebx
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x5f37b3
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x5f37c5
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
add edi, 0xffffffff
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x5f37e2
mov dx, word [0x798834]
mov word [edi], dx
mov byte [esp + 0xac], al
mov eax, ebp
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], 0
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f3818
sub eax, edx
push eax
push ebp
lea ecx, [esp + 0xb0]
call fcn.00402660
cmp dword [esp + 0xc0], 0x10
mov eax, dword [esp + 0xac]
mov byte [esp + 0x274], 0x1e
jae 0x5f3851
lea eax, [esp + 0xac]
mov ecx, dword [esp + 0xbc]
push ecx
push 0
push eax
lea ecx, [esp + 0x14c]
call fcn.0040f2a0
mov ebp, eax
mov eax, ebx
lea edx, [eax + 1]
nop
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x5f3870
sub eax, edx
push eax
push ebx
lea ecx, [esp + 0x64]
call fcn.00402660
mov edx, dword [esp + 0x27c]
add edx, 0xffffffff
cmp edx, 4
ja 0x5f390b
cmp byte [0x992082], 0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edi, dword [esp + 0x10]
lea esi, [edi + ecx*4 + 0x200]
je 0x5f38bf
push 0x1ab9950
call dword [0x794290]
cmp byte [0x992082], 0
mov esi, dword [esi]
je 0x5f38d5
push 0x1ab9950
call dword [0x79428c]
test esi, esi
lea esi, [edi + 0x268]
push 0x798830
mov ecx, esi
je 0x5f38fd
call fcn.00439b60
mov ecx, eax
call fcn.0053a2e0
imul eax, ebp
add eax, dword [edi + 0x1cc]
jmp 0x5f3959
call fcn.00439b60
mov ecx, eax
call fcn.0053a2e0
jmp 0x5f3956
cmp byte [0x992082], 0
je 0x5f391f
push 0x1b1cd34
call dword [0x794290]
mov esi, dword [esp + 0x10]
mov edx, dword [esi + 0x268]
mov edi, dword [edx + 0x14]
add esi, 0x268
cmp byte [0x992082], 0
je 0x5f3946
push 0x1b1cd34
call dword [0x79428c]
push 0x798830
mov ecx, edi
call fcn.0053a2e0
mov edi, dword [esp + 0x10]
imul eax, ebp
cmp byte [0x992082], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], 0
je 0x5f3979
push 0x1b1cd34
call dword [0x794290]
cmp byte [0x992082], 0
mov eax, dword [esi]
mov esi, dword [eax + 0x14]
je 0x5f3992
push 0x1b1cd34
call dword [0x79428c]
mov ecx, dword [esp + 0x1c]
push ecx
mov ecx, esi
call fcn.0053a2e0
add eax, dword [esp + 0x4c]
cmp byte [esp + 0x27], 0
mov edx, dword [edi + 0x104]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
je 0x5f39f6
mov eax, dword [esp + 0xf4]
test eax, eax
je 0x5f39f6
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x78], ecx
mov edx, dword [eax + 0x18]
mov dword [esp + 0x84], edx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x7c], ecx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x80], edx
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x88], eax
mov byte [esp + 0x8c], 1
cmp edi, dword [esp + 0x94]
jne 0x5f3a35
mov eax, dword [0x1b0a6dc]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f3ad1
cmp edi, dword [esp + 0xa4]
jne 0x5f3a71
mov eax, dword [0x1b0a6f4]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f3ad1
cmp edi, dword [esp + 0x90]
jne 0x5f3a86
lea eax, [esp + 0x4c]
push eax
mov ecx, 0x1b0a6e4
jmp 0x5f3acc
cmp edi, dword [esp + 0x38]
jne 0x5f3a98
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6a0
jmp 0x5f3acc
cmp edi, dword [esp + 0x34]
jne 0x5f3aaa
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a6c4
jmp 0x5f3acc
cmp edi, dword [esp + 0x3c]
jne 0x5f3abc
lea eax, [esp + 0x4c]
push eax
mov ecx, 0x1b0a670
jmp 0x5f3acc
cmp edi, dword [esp + 0x28]
jne 0x5f3ad1
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6b8
call fcn.005f09f0
mov edx, dword [esp + 0x1c]
push edx
call fcn.0074dd4b
mov esi, 0x10
add esp, 4
cmp dword [esp + 0xc0], esi
jb 0x5f3afc
mov eax, dword [esp + 0xac]
push eax
call fcn.0074c96f
add esp, 4
cmp dword [esp + 0x74], esi
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], 0
mov byte [esp + 0xac], 0
jmp 0x5f3c15
push edi
push 0x7958c8
lea ecx, [esp + 0x64]
mov byte [esp + 0x27c], 0x1f
call fcn.00402660
cmp esi, dword [esp + 0x94]
jne 0x5f3b79
mov eax, dword [0x1b0a6dc]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f3c10
cmp esi, dword [esp + 0xa4]
jne 0x5f3bb5
mov eax, dword [0x1b0a6f4]
mov ecx, dword [eax + 4]
lea edi, [eax + 4]
lea edx, [esp + 0x4c]
push edx
push ecx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
jmp 0x5f3c10
cmp esi, dword [esp + 0x90]
jne 0x5f3bca
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a6e4
jmp 0x5f3c0b
cmp esi, dword [esp + 0x38]
jne 0x5f3bd7
mov ecx, 0x1b0a6a0
jmp 0x5f3c06
cmp esi, dword [esp + 0x34]
jne 0x5f3be9
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6c4
jmp 0x5f3c0b
cmp esi, dword [esp + 0x3c]
jne 0x5f3bfb
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a670
jmp 0x5f3c0b
cmp esi, dword [esp + 0x28]
jne 0x5f3c10
mov ecx, 0x1b0a6b8
lea eax, [esp + 0x4c]
push eax
call fcn.005f09f0
cmp dword [esp + 0x74], 0x10
mov byte [esp + 0x274], 0x16
jb 0x5f3c2c
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0074c96f
add esp, 4
lea ecx, [esp + 0x98]
call fcn.0045ae20
lea ecx, [esp + 0x40]
call fcn.005ee3c0
mov eax, dword [esp + 0x14]
mov byte [esp + 0x18c], 0
mov edx, dword [esp + 0x18c]
push edx
push eax
lea ecx, [esp + 0xf0]
mov dword [esp + 0x24], 0
mov dword [esp + 0xec], eax
call fcn.005f1a80
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0xe4]
push eax
add ecx, 0x124
mov byte [esp + 0x278], 0x20
call fcn.005f0960
mov ecx, dword [esp + 0xe8]
test ecx, ecx
jmp 0x5f3f8d
xor edi, edi
cmp eax, edi
je 0x5f3cf5
mov dword [esp + 0x134], 0xf
mov dword [esp + 0x130], edi
mov byte [esp + 0x120], 0
or dword [esp + 0x20], 4
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [esp + 0x280]
lea edx, [esp + 0x120]
add ecx, 0xb
push edx
push ecx
mov ecx, eax
mov byte [esp + 0x280], 0x22
call fcn.005f0c00
mov ebp, eax
mov dword [esp + 0x14], eax
jmp 0x5f3cfb
xor ebp, ebp
mov dword [esp + 0x14], ebp
test byte [esp + 0x20], 4
mov dword [esp + 0x274], 0x16
je 0x5f3d46
and dword [esp + 0x20], 0xfffffffb
cmp dword [esp + 0x134], 0x10
jb 0x5f3d2c
mov edx, dword [esp + 0x120]
push edx
call fcn.0074c96f
add esp, 4
mov dword [esp + 0x134], 0xf
mov dword [esp + 0x130], edi
mov byte [esp + 0x120], 0
lea esi, [ebp + 0x44]
lea eax, [esp + 0x40]
cmp esi, eax
je 0x5f3d86
mov eax, dword [esp + 0x44]
mov ebx, dword [eax]
mov ecx, esi
mov edi, eax
lea ebp, [esp + 0x40]
call fcn.005ee3c0
mov edx, dword [esp + 0xc4]
mov eax, dword [esi + 4]
mov ecx, dword [eax]
push edx
push edi
push ebp
push ebx
mov eax, ebp
push eax
push ecx
push esi
mov ecx, esi
call fcn.005f06c0
mov ebp, dword [esp + 0x14]
xor edi, edi
cmp byte [esp + 0x2a4], 0
je 0x5f3d9e
mov eax, dword [esp + 0x2a8]
mov byte [ebp + 0x28], 0
mov dword [ebp + 0x24], eax
mov ebx, dword [esp + 0x10]
cmp dword [esp + 0x2c], ebx
jne 0x5f3f2c
xor eax, eax
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], edi
mov byte [esp + 0x60], 0
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], edi
mov byte [esp + 0x8c], al
push edi
push 0x7958c8
lea ecx, [esp + 0x64]
mov byte [esp + 0x27c], 0x24
call fcn.00402660
cmp ebx, dword [esp + 0x94]
jne 0x5f3e4b
mov eax, dword [0x1b0a6dc]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6d8
call fcn.005ee820
push 1
mov ecx, 0x1b0a6d8
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f3f10
cmp ebx, dword [esp + 0xa4]
jne 0x5f3e8c
mov eax, dword [0x1b0a6f4]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6f0
call fcn.005ee820
push 1
mov ecx, 0x1b0a6f0
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f3f10
cmp ebx, dword [esp + 0x90]
jne 0x5f3eca
mov eax, dword [0x1b0a6e8]
mov edx, dword [eax + 4]
lea edi, [eax + 4]
lea ecx, [esp + 0x4c]
push ecx
push edx
push eax
mov ecx, 0x1b0a6e4
call fcn.005ee820
push 1
mov ecx, 0x1b0a6e4
mov esi, eax
call fcn.005ede60
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], esi
xor edi, edi
jmp 0x5f3f10
cmp ebx, dword [esp + 0x38]
jne 0x5f3ed7
mov ecx, 0x1b0a6a0
jmp 0x5f3f06
cmp ebx, dword [esp + 0x34]
jne 0x5f3ee9
lea ecx, [esp + 0x4c]
push ecx
mov ecx, 0x1b0a6c4
jmp 0x5f3f0b
cmp ebx, dword [esp + 0x3c]
jne 0x5f3efb
lea edx, [esp + 0x4c]
push edx
mov ecx, 0x1b0a670
jmp 0x5f3f0b
cmp ebx, dword [esp + 0x28]
jne 0x5f3f10
mov ecx, 0x1b0a6b8
lea eax, [esp + 0x4c]
push eax
call fcn.005f09f0
cmp dword [esp + 0x74], 0x10
mov byte [esp + 0x274], 0x16
jb 0x5f3f2c
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0074c96f
add esp, 4
lea ecx, [esp + 0x98]
call fcn.0045ae20
lea ecx, [esp + 0x40]
call fcn.005ee3c0
mov byte [esp + 0xc4], 0
mov edx, dword [esp + 0xc4]
push edx
push ebp
lea ecx, [esp + 0xf8]
mov dword [esp + 0x24], edi
mov dword [esp + 0xf4], ebp
call fcn.005f1a80
lea eax, [esp + 0xec]
push eax
lea ecx, [ebx + 0x124]
mov byte [esp + 0x278], 0x25
call fcn.005f0960
mov ecx, dword [esp + 0xf0]
cmp ecx, edi
mov byte [esp + 0x274], 0x16
je 0x5f3f9c
call fcn.00435470
mov ecx, dword [esp + 0x110]
test ecx, ecx
mov byte [esp + 0x274], 8
je 0x5f3fb4
call fcn.00435470
cmp dword [esp + 0xd0], 0
mov byte [esp + 0x274], 5
je 0x5f22d0
mov ecx, dword [esp + 0xd0]
call fcn.00435470
jmp 0x5f22d0
cmp dword [0x1b0a698], 0
ja 0x5f22b0
mov ebp, dword [esp + 0x10]
lea ebx, [ebp + 0x124]
mov ecx, dword [ebx + 4]
test ecx, ecx
jne 0x5f3ffd
xor eax, eax
jmp 0x5f4005
mov eax, dword [ebx + 8]
sub eax, ecx
sar eax, 3
cmp eax, dword [ebp + 0x27c]
jbe 0x5f4136
mov esi, ecx
cmp esi, dword [ebx + 8]
jbe 0x5f401d
call fcn.0074ca9e
push esi
push ebx
lea ecx, [esp + 0xdc]
push ecx
mov ecx, ebx
call fcn.0060b940
cmp dword [esp + 0x94], ebp
jne 0x5f4053
mov edx, dword [0x1b0a6dc]
mov eax, dword [edx]
push eax
mov ecx, 0x1b0a6d8
push ecx
lea eax, [esp + 0x1a4]
push eax
call fcn.005ee420
cmp ebp, dword [esp + 0xa4]
jne 0x5f4078
mov ecx, dword [0x1b0a6f4]
mov eax, dword [ecx]
push eax
mov ecx, 0x1b0a6f0
push ecx
lea edx, [esp + 0x140]
push edx
call fcn.005ee420
cmp ebp, dword [esp + 0x90]
jne 0x5f40a1
mov eax, dword [0x1b0a6e8]
mov eax, dword [eax]
push eax
mov ecx, 0x1b0a6e4
push ecx
lea ecx, [esp + 0xf4]
push ecx
mov ecx, 0x1b0a6e4
call fcn.005ee420
cmp ebp, dword [esp + 0x38]
jne 0x5f40c3
mov edx, dword [0x1b0a6a4]
mov eax, dword [edx]
push eax
mov ecx, 0x1b0a6a0
push ecx
lea eax, [esp + 0xec]
push eax
call fcn.005ee420
cmp ebp, dword [esp + 0x34]
jne 0x5f40e5
mov ecx, dword [0x1b0a6c8]
mov eax, dword [ecx]
push eax
mov ecx, 0x1b0a6c4
push ecx
lea edx, [esp + 0x17c]
push edx
call fcn.005ee420
cmp ebp, dword [esp + 0x3c]
jne 0x5f410b
mov eax, dword [0x1b0a674]
mov eax, dword [eax]
push eax
mov ecx, 0x1b0a670
push ecx
lea ecx, [esp + 0x164]
push ecx
mov ecx, 0x1b0a670
call fcn.005ee420
cmp ebp, dword [esp + 0x28]
jne 0x5f3ff2
mov edx, dword [0x1b0a6bc]
mov eax, dword [edx]
push eax
mov ecx, 0x1b0a6b8
push ecx
lea eax, [esp + 0x16c]
push eax
call fcn.005ee420
jmp 0x5f3ff2
mov esi, 0x64
cmp dword [0x1b0a6e0], esi
jbe 0x5f4174
mov edi, 0x1b0a6d8
jmp 0x5f4150
mov ecx, dword [0x1b0a6dc]
mov eax, dword [ecx]
push eax
push edi
lea edx, [esp + 0xdc]
push edx
mov ecx, 0x1b0a6d8
call fcn.005ee420
cmp dword [0x1b0a6e0], esi
ja 0x5f4150
cmp dword [0x1b0a6f8], esi
jbe 0x5f41a4
mov edi, 0x1b0a6f0
mov eax, dword [0x1b0a6f4]
mov eax, dword [eax]
push eax
push edi
lea ecx, [esp + 0xdc]
push ecx
mov ecx, 0x1b0a6f0
call fcn.005ee420
cmp dword [0x1b0a6f8], esi
ja 0x5f4181
cmp dword [0x1b0a6ec], esi
jbe 0x5f41d5
mov edi, 0x1b0a6e4
mov edx, dword [0x1b0a6e8]
mov eax, dword [edx]
push eax
push edi
lea eax, [esp + 0xdc]
push eax
mov ecx, 0x1b0a6e4
call fcn.005ee420
cmp dword [0x1b0a6ec], esi
ja 0x5f41b1
cmp dword [0x1b0a6a8], esi
jbe 0x5f4206
mov edi, 0x1b0a6a0
mov ecx, dword [0x1b0a6a4]
mov eax, dword [ecx]
push eax
push edi
lea edx, [esp + 0xdc]
push edx
mov ecx, 0x1b0a6a0
call fcn.005ee420
cmp dword [0x1b0a6a8], esi
ja 0x5f41e2
cmp dword [0x1b0a6cc], esi
jbe 0x5f4236
mov edi, 0x1b0a6c4
mov eax, dword [0x1b0a6c8]
mov eax, dword [eax]
push eax
push edi
lea ecx, [esp + 0xdc]
push ecx
mov ecx, 0x1b0a6c4
call fcn.005ee420
cmp dword [0x1b0a6cc], esi
ja 0x5f4213
cmp dword [0x1b0a678], esi
jbe 0x5f4267
mov edi, 0x1b0a670
mov edx, dword [0x1b0a674]
mov eax, dword [edx]
push eax
push edi
lea eax, [esp + 0xdc]
push eax
mov ecx, 0x1b0a670
call fcn.005ee420
cmp dword [0x1b0a678], esi
ja 0x5f4243
cmp dword [0x1b0a6c0], esi
jbe 0x5f4298
mov edi, 0x1b0a6b8
mov ecx, dword [0x1b0a6bc]
mov eax, dword [ecx]
push eax
push edi
lea edx, [esp + 0xdc]
push edx
mov ecx, 0x1b0a6b8
call fcn.005ee420
cmp dword [0x1b0a6c0], esi
ja 0x5f4274
mov ecx, dword [ebx + 4]
xor edi, edi
cmp ecx, edi
jne 0x5f42a5
xor eax, eax
jmp 0x5f42ad
mov eax, dword [ebx + 8]
sub eax, ecx
sar eax, 3
mov esi, dword [esp + 0x10]
push eax
mov ecx, esi
call fcn.005eaa40
mov ecx, dword [ebx + 4]
cmp ecx, edi
jne 0x5f42c4
xor eax, eax
jmp 0x5f42cc
mov eax, dword [ebx + 8]
sub eax, ecx
sar eax, 3
mov ecx, dword [esi + 0x104]
imul ecx, eax
cmp ecx, dword [esi + 0x60]
jb 0x5f42f0
cmp byte [esi + 0x110], 0
je 0x5f42f9
push 0x7fffffff
push edi
mov ecx, esi
call fcn.005eafa0
cmp byte [esi + 0x110], 0
jne 0x5f4308
push 0x8ab090
push 1
call fcn.00678ac0
add esp, 8
mov ecx, dword [esp + 0xf8]
cmp ecx, edi
mov byte [esp + 0x274], 4
je 0x5f4320
call fcn.00435470
lea ecx, [esp + 0x40]
call fcn.005ee3c0
mov edx, dword [esp + 0x44]
push edx
call fcn.0074c96f
add esp, 4
lea ecx, [esp + 0x98]
mov dword [esp + 0x44], edi
mov byte [esp + 0x274], 1
call fcn.0045ae20
mov eax, dword [esp + 0x9c]
push eax
call fcn.0074c96f
mov esi, 0x10
add esp, 4
cmp dword [esp + 0x158], esi
mov dword [esp + 0x9c], edi
jb 0x5f4383
mov ecx, dword [esp + 0x144]
push ecx
call fcn.0074c96f
add esp, 4
cmp dword [esp + 0x298], esi
mov dword [esp + 0x158], 0xf
mov dword [esp + 0x154], edi
mov byte [esp + 0x144], 0
jb 0x5f43b6
mov edx, dword [esp + 0x284]
push edx
call fcn.0074c96f
add esp, 4
mov ecx, dword [esp + 0x26c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x268
ret 0x30