Function at 0x10164000
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1138
call fcn.10075330
mov eax, dword [0x101b4820]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov dword [ebp - 0x106c], 0
mov dword [ebp - 0x10a0], 0
mov dword [ebp - 0x1094], 0
mov dword [ebp - 0x109c], 0
xorpd xmm0, xmm0
movlpd qword [ebp - 0x1088], xmm0
xorpd xmm0, xmm0
movlpd qword [ebp - 0x10a8], xmm0
lea eax, [ebp - 0x1050]
mov dword [ebp - 0x1068], eax
mov ecx, dword [ebp + 0xc]
and ecx, 0x800
jne 0x1016407c
mov dword [ebp - 0x10e8], 1
jmp 0x10164086
mov dword [ebp - 0x10e8], 0
mov edx, dword [ebp - 0x10e8]
mov dword [ebp - 0x10bc], edx
lea eax, [ebp - 0x18]
mov dword [ebp - 0x1098], eax
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x1058], ecx
xorpd xmm0, xmm0
movlpd qword [ebp - 0x10c4], xmm0
mov edx, dword [ebp + 8]
mov dword [ebp - 0x10f4], edx
mov eax, dword [ebp - 0x10f4]
cmp dword [eax + 4], 0
ja 0x101640e5
jb 0x101640d2
mov ecx, dword [ebp - 0x10f4]
cmp dword [ecx], 0x16
jae 0x101640e5
push 8
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
lea eax, [ebp - 0x10a8]
push eax
push 0x16
push 0x6054b50
mov ecx, dword [ebp + 8]
push ecx
call fcn.10164d00
add esp, 0x10
test eax, eax
jne 0x10164116
push 7
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
push 0x16
mov eax, dword [ebp - 0x1068]
push eax
mov ecx, dword [ebp - 0x10a4]
push ecx
mov edx, dword [ebp - 0x10a8]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x38]
call eax
add esp, 0x14
cmp eax, 0x16
je 0x10164157
push 0x14
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov edx, dword [ebp - 0x1068]
cmp dword [edx], 0x6054b50
je 0x10164178
push 8
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x10a4], 0
jl 0x1016429f
jg 0x10164194
cmp dword [ebp - 0x10a8], 0x4c
jb 0x1016429f
push 0x14
mov ecx, dword [ebp - 0x1098]
push ecx
mov edx, dword [ebp - 0x10a8]
sub edx, 0x14
mov eax, dword [ebp - 0x10a4]
sbb eax, 0
push eax
push edx
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x44]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
call ecx
add esp, 0x14
cmp eax, 0x14
jne 0x1016429f
mov edx, dword [ebp - 0x1098]
cmp dword [edx], 0x7064b50
jne 0x1016429f
mov eax, dword [ebp - 0x1098]
mov esi, dword [eax + 8]
xor edi, edi
mov ecx, dword [ebp - 0x1098]
xor edx, edx
mov eax, dword [ecx + 0xc]
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x10c4], esi
mov dword [ebp - 0x10c0], edi
mov edx, dword [ebp + 8]
mov eax, dword [edx]
sub eax, 0x38
mov ecx, dword [edx + 4]
sbb ecx, 0
mov dword [ebp - 0x1138], eax
mov dword [ebp - 0x1134], ecx
mov edx, dword [ebp - 0x10c0]
cmp edx, dword [ebp - 0x1134]
jb 0x10164256
ja 0x10164243
mov eax, dword [ebp - 0x10c4]
cmp eax, dword [ebp - 0x1138]
jbe 0x10164256
push 8
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
push 0x38
mov edx, dword [ebp - 0x1058]
push edx
mov eax, dword [ebp - 0x10c0]
push eax
mov ecx, dword [ebp - 0x10c4]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x44]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x38]
call edx
add esp, 0x14
cmp eax, 0x38
jne 0x1016429f
mov eax, dword [ebp - 0x1058]
cmp dword [eax], 0x6064b50
jne 0x1016429f
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
mov dword [edx + 0x34], 1
mov eax, dword [ebp - 0x1068]
movzx ecx, word [eax + 0xa]
mov edx, dword [ebp + 8]
mov dword [edx + 0x10], ecx
mov eax, dword [ebp - 0x1068]
movzx ecx, word [eax + 8]
mov dword [ebp - 0x10a0], ecx
mov edx, dword [ebp - 0x1068]
movzx eax, word [edx + 4]
mov dword [ebp - 0x1094], eax
mov ecx, dword [ebp - 0x1068]
movzx edx, word [ecx + 6]
mov dword [ebp - 0x109c], edx
mov eax, dword [ebp - 0x1068]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x106c], ecx
mov edx, dword [ebp - 0x1068]
mov eax, dword [edx + 0x10]
xor ecx, ecx
mov dword [ebp - 0x1088], eax
mov dword [ebp - 0x1084], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
cmp dword [eax + 0x34], 0
je 0x101644fb
mov ecx, dword [ebp - 0x1098]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x1124], edx
mov eax, dword [ebp - 0x1058]
mov esi, dword [eax + 0x20]
xor edi, edi
mov ecx, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [ecx + 0x24]
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x1104], esi
mov dword [ebp - 0x1100], edi
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x18]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x1c]
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x10fc], esi
mov dword [ebp - 0x10f8], edi
mov ecx, dword [ebp - 0x1058]
mov esi, dword [ecx + 4]
xor edi, edi
mov edx, dword [ebp - 0x1058]
xor ecx, ecx
mov eax, dword [edx + 8]
mov edx, ecx
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x1130], esi
mov dword [ebp - 0x112c], edi
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x28]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x2c]
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x110c], esi
mov dword [ebp - 0x1108], edi
cmp dword [ebp - 0x112c], 0
ja 0x10164401
jb 0x101643ee
cmp dword [ebp - 0x1130], 0x2c
jae 0x10164401
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x1124], 1
je 0x1016441d
push 0xa
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x1100], 0
ja 0x1016442f
cmp dword [ebp - 0x1104], 0xffffffff
jbe 0x10164442
push 2
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x1104]
mov edx, dword [ebp + 8]
mov dword [edx + 0x10], ecx
cmp dword [ebp - 0x10f8], 0
ja 0x10164460
cmp dword [ebp - 0x10fc], 0xffffffff
jbe 0x10164473
push 2
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x10fc]
mov dword [ebp - 0x10a0], ecx
cmp dword [ebp - 0x1108], 0
ja 0x10164491
cmp dword [ebp - 0x110c], 0xffffffff
jbe 0x101644a4
push 0xf
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x110c]
mov dword [ebp - 0x106c], eax
mov ecx, dword [ebp - 0x1058]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x1094], edx
mov eax, dword [ebp - 0x1058]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x109c], ecx
mov edx, dword [ebp - 0x1058]
mov esi, dword [edx + 0x30]
xor edi, edi
mov eax, dword [ebp - 0x1058]
xor edx, edx
mov eax, dword [eax + 0x34]
mov cl, 0x20
call fcn.1016e730
or esi, eax
or edi, edx
mov dword [ebp - 0x1088], esi
mov dword [ebp - 0x1084], edi
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
cmp edx, dword [ebp - 0x10a0]
je 0x1016451c
push 0xa
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x1094]
or ecx, dword [ebp - 0x109c]
je 0x1016454f
cmp dword [ebp - 0x1094], 1
jne 0x1016453c
cmp dword [ebp - 0x109c], 1
je 0x1016454f
push 0xa
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
imul ecx, ecx, 0x2e
cmp dword [ebp - 0x106c], ecx
jae 0x10164573
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x106c]
xor ecx, ecx
add eax, dword [ebp - 0x1088]
adc ecx, dword [ebp - 0x1084]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x1114], eax
mov dword [ebp - 0x1110], ecx
mov dword [ebp - 0x10d4], edx
mov eax, dword [ebp - 0x10d4]
mov ecx, dword [ebp - 0x1110]
cmp ecx, dword [eax + 4]
jb 0x101645d2
ja 0x101645bf
mov edx, dword [ebp - 0x10d4]
mov eax, dword [ebp - 0x1114]
cmp eax, dword [edx]
jbe 0x101645d2
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x1088]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x1084]
mov dword [edx + 0xc], ecx
mov edx, dword [ebp + 8]
cmp dword [edx + 0x10], 0
je 0x10164ccd
push 0
mov eax, dword [ebp - 0x106c]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.10165940
add esp, 0x10
test eax, eax
je 0x10164637
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
add ecx, 0x10
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10165940
add esp, 0x10
test eax, eax
jne 0x1016464a
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x10bc], 0
je 0x10164689
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
add ecx, 0x20
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.10165940
add esp, 0x10
test eax, eax
jne 0x10164689
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x106c]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x1084]
push edx
mov eax, dword [ebp - 0x1088]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x44]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x38]
call ecx
add esp, 0x14
cmp eax, dword [ebp - 0x106c]
je 0x101646d4
push 0x14
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov edx, dword [ecx]
mov dword [ebp - 0x1054], edx
mov eax, dword [ebp - 0x106c]
mov dword [ebp - 0x1090], eax
mov dword [ebp - 0x107c], 0
jmp 0x10164709
mov ecx, dword [ebp - 0x107c]
add ecx, 1
mov dword [ebp - 0x107c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 0x107c]
cmp eax, dword [edx + 0x10]
jae 0x10164ccd
cmp dword [ebp - 0x1090], 0x2e
jb 0x10164732
mov ecx, dword [ebp - 0x1054]
cmp dword [ecx], 0x2014b50
je 0x10164745
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov edx, dword [ebp - 0x1054]
sub edx, dword [ecx]
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0x107c]
mov dword [eax + ecx*4], edx
cmp dword [ebp - 0x10bc], 0
je 0x10164786
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
mov ecx, dword [eax + 0x20]
mov edx, dword [ebp - 0x107c]
mov eax, dword [ebp - 0x107c]
mov dword [ecx + edx*4], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x14]
xor eax, eax
mov dword [ebp - 0x1060], edx
mov dword [ebp - 0x105c], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x18]
xor eax, eax
mov dword [ebp - 0x1074], edx
mov dword [ebp - 0x1070], eax
mov ecx, dword [ebp - 0x1054]
mov edx, dword [ecx + 0x2a]
xor eax, eax
mov dword [ebp - 0x10d0], edx
mov dword [ebp - 0x10cc], eax
mov ecx, dword [ebp - 0x1054]
movzx edx, word [ecx + 0x1c]
mov dword [ebp - 0x10b8], edx
mov eax, dword [ebp - 0x1054]
movzx ecx, word [eax + 0x1e]
mov dword [ebp - 0x1078], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x48]
cmp dword [eax + 0x38], 0
jne 0x10164af0
cmp dword [ebp - 0x1078], 0
je 0x10164af0
mov ecx, dword [ebp - 0x105c]
cmp ecx, dword [ebp - 0x1070]
jb 0x10164840
ja 0x10164826
mov edx, dword [ebp - 0x1060]
cmp edx, dword [ebp - 0x1074]
jbe 0x10164840
mov eax, dword [ebp - 0x1060]
mov dword [ebp - 0x10f0], eax
mov ecx, dword [ebp - 0x105c]
mov dword [ebp - 0x10ec], ecx
jmp 0x10164858
mov edx, dword [ebp - 0x1074]
mov dword [ebp - 0x10f0], edx
mov eax, dword [ebp - 0x1070]
mov dword [ebp - 0x10ec], eax
mov ecx, dword [ebp - 0x10ec]
cmp ecx, dword [ebp - 0x10cc]
jb 0x101648e0
ja 0x10164876
mov edx, dword [ebp - 0x10f0]
cmp edx, dword [ebp - 0x10d0]
jbe 0x101648e0
mov eax, dword [ebp - 0x105c]
cmp eax, dword [ebp - 0x1070]
jb 0x101648ae
ja 0x10164894
mov ecx, dword [ebp - 0x1060]
cmp ecx, dword [ebp - 0x1074]
jbe 0x101648ae
mov edx, dword [ebp - 0x1060]
mov dword [ebp - 0x10e4], edx
mov eax, dword [ebp - 0x105c]
mov dword [ebp - 0x10e0], eax
jmp 0x101648c6
mov ecx, dword [ebp - 0x1074]
mov dword [ebp - 0x10e4], ecx
mov edx, dword [ebp - 0x1070]
mov dword [ebp - 0x10e0], edx
mov eax, dword [ebp - 0x10e4]
mov dword [ebp - 0x10dc], eax
mov ecx, dword [ebp - 0x10e0]
mov dword [ebp - 0x10d8], ecx
jmp 0x101648f8
mov edx, dword [ebp - 0x10d0]
mov dword [ebp - 0x10dc], edx
mov eax, dword [ebp - 0x10cc]
mov dword [ebp - 0x10d8], eax
cmp dword [ebp - 0x10dc], 0xffffffff
jne 0x10164af0
cmp dword [ebp - 0x10d8], 0
jne 0x10164af0
mov ecx, dword [ebp - 0x1078]
mov dword [ebp - 0x1080], ecx
cmp dword [ebp - 0x1080], 0
je 0x10164af0
mov dword [ebp - 0x1064], 0
mov edx, dword [ebp - 0x1078]
mov eax, dword [ebp - 0x10b8]
lea ecx, [eax + edx + 0x2e]
cmp ecx, dword [ebp - 0x1090]
jbe 0x101649f8
mov edx, dword [ebp - 0x1078]
push edx
call fcn.10062ccd
add esp, 4
mov dword [ebp - 0x1064], eax
cmp dword [ebp - 0x1064], 0
jne 0x10164982
push 0x10
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x1078]
push ecx
mov edx, dword [ebp - 0x1064]
push edx
mov eax, dword [ebp - 0x1088]
add eax, 0x2e
mov ecx, dword [ebp - 0x1084]
adc ecx, 0
xor edx, edx
add eax, dword [ebp - 0x10b8]
adc ecx, edx
push ecx
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x44]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x38]
call eax
add esp, 0x14
cmp eax, dword [ebp - 0x1078]
je 0x101649ea
mov ecx, dword [ebp - 0x1064]
push ecx
call fcn.100630b1
add esp, 4
push 0x14
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x1064]
mov dword [ebp - 0x108c], eax
jmp 0x10164a0e
mov ecx, dword [ebp - 0x10b8]
mov edx, dword [ebp - 0x1054]
lea eax, [edx + ecx + 0x2e]
mov dword [ebp - 0x108c], eax
cmp dword [ebp - 0x1080], 4
jae 0x10164a39
mov ecx, dword [ebp - 0x1064]
push ecx
call fcn.100630b1
add esp, 4
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x108c]
movzx ecx, word [eax]
mov dword [ebp - 0x1128], ecx
mov edx, dword [ebp - 0x108c]
movzx eax, word [edx + 2]
mov dword [ebp - 0x10ac], eax
mov ecx, dword [ebp - 0x10ac]
add ecx, 4
cmp ecx, dword [ebp - 0x1080]
jbe 0x10164a8b
mov edx, dword [ebp - 0x1064]
push edx
call fcn.100630b1
add esp, 4
push 9
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x1128], 1
jne 0x10164ab0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x48]
mov dword [edx + 0x34], 1
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x48]
mov dword [ecx + 0x38], 1
jmp 0x10164ae1
mov edx, dword [ebp - 0x10ac]
mov eax, dword [ebp - 0x108c]
lea ecx, [eax + edx + 4]
mov dword [ebp - 0x108c], ecx
mov edx, dword [ebp - 0x1080]
sub edx, 4
sub edx, dword [ebp - 0x10ac]
mov dword [ebp - 0x1080], edx
jne 0x10164a0e
mov eax, dword [ebp - 0x1064]
push eax
call fcn.100630b1
add esp, 4
cmp dword [ebp - 0x1060], 0xffffffff
jne 0x10164b02
cmp dword [ebp - 0x105c], 0
je 0x10164b6b
cmp dword [ebp - 0x1074], 0xffffffff
jne 0x10164b14
cmp dword [ebp - 0x1070], 0
je 0x10164b6b
mov ecx, dword [ebp - 0x1054]
cmp dword [ecx + 0xa], 0
jne 0x10164b3c
mov edx, dword [ebp - 0x1074]
cmp edx, dword [ebp - 0x1060]
jne 0x10164b58
mov eax, dword [ebp - 0x1070]
cmp eax, dword [ebp - 0x105c]
jne 0x10164b58
mov ecx, dword [ebp - 0x1074]
or ecx, dword [ebp - 0x1070]
je 0x10164b6b
mov edx, dword [ebp - 0x1060]
or edx, dword [ebp - 0x105c]
jne 0x10164b6b
push 9
mov eax, dword [ebp + 8]
push eax
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov ecx, dword [ebp - 0x1054]
movzx edx, word [ecx + 0x22]
mov dword [ebp - 0x10b0], edx
cmp dword [ebp - 0x10b0], 0xffff
je 0x10164b9e
mov eax, dword [ebp - 0x10b0]
cmp eax, dword [ebp - 0x1094]
je 0x10164bb1
cmp dword [ebp - 0x10b0], 1
je 0x10164bb1
push 0xa
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
cmp dword [ebp - 0x1060], 0xffffffff
jne 0x10164bc3
cmp dword [ebp - 0x105c], 0
je 0x10164c2b
mov edx, dword [ebp - 0x1054]
mov eax, dword [edx + 0x2a]
xor ecx, ecx
add eax, 0x1e
adc ecx, 0
add eax, dword [ebp - 0x1060]
adc ecx, dword [ebp - 0x105c]
mov edx, dword [ebp + 8]
mov dword [ebp - 0x111c], eax
mov dword [ebp - 0x1118], ecx
mov dword [ebp - 0x10c8], edx
mov eax, dword [ebp - 0x10c8]
mov ecx, dword [ebp - 0x1118]
cmp ecx, dword [eax + 4]
jb 0x10164c2b
ja 0x10164c18
mov edx, dword [ebp - 0x10c8]
mov eax, dword [ebp - 0x111c]
cmp eax, dword [edx]
jbe 0x10164c2b
push 9
mov ecx, dword [ebp + 8]
push ecx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 8]
mov dword [ebp - 0x1120], eax
mov ecx, dword [ebp - 0x1120]
and ecx, 0x2000
je 0x10164c5c
push 5
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x1054]
movzx ecx, word [eax + 0x1c]
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 0x1e]
lea ecx, [ecx + eax + 0x2e]
mov edx, dword [ebp - 0x1054]
movzx eax, word [edx + 0x20]
add ecx, eax
mov dword [ebp - 0x10b4], ecx
mov ecx, dword [ebp - 0x10b4]
cmp ecx, dword [ebp - 0x1090]
jbe 0x10164ca4
push 9
mov edx, dword [ebp + 8]
push edx
call fcn.10165770
add esp, 8
jmp 0x10164ce7
mov eax, dword [ebp - 0x1090]
sub eax, dword [ebp - 0x10b4]
mov dword [ebp - 0x1090], eax
mov ecx, dword [ebp - 0x1054]
add ecx, dword [ebp - 0x10b4]
mov dword [ebp - 0x1054], ecx
jmp 0x101646fa
cmp dword [ebp - 0x10bc], 0
je 0x10164ce2
mov edx, dword [ebp + 8]
push edx
call fcn.10165080
add esp, 4
mov eax, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10062ba0
mov esp, ebp
pop ebp
ret