Function at 0x101872b4
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xadc
mov eax, 0x10337c66
call fcn.102f781d
mov eax, dword [ebp + 8]
xor edi, edi
xor ebx, ebx
inc edi
test byte [0x103a47bc], 1
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x2f8], eax
jne 0x10187307
or dword [0x103a47bc], edi
push 0x1000b68c
mov ecx, 0x103a47a0
mov dword [ebp - 4], ebx
call fcn.10161547
push 0x10348a5e
call fcn.102f79df
or dword [ebp - 4], 0xffffffff
pop ecx
test byte [0x103a47bc], 2
push 2
pop esi
jne 0x1018733a
or dword [0x103a47bc], esi
push 0x100075f0
mov ecx, 0x103a4784
mov dword [ebp - 4], edi
call fcn.10161547
push 0x10348a4f
call fcn.102f79df
or dword [ebp - 4], 0xffffffff
pop ecx
test byte [0x103a47bc], 4
jne 0x1018736b
or dword [0x103a47bc], 4
push 0x1000b67c
mov ecx, 0x103a4768
mov dword [ebp - 4], esi
call fcn.10161547
push 0x10348a40
call fcn.102f79df
or dword [ebp - 4], 0xffffffff
pop ecx
test byte [0x103a47bc], 8
push 3
pop esi
jne 0x1018739f
or dword [0x103a47bc], 8
push 0x1000b66c
mov ecx, 0x103a474c
mov dword [ebp - 4], esi
call fcn.10161547
push 0x10348a31
call fcn.102f79df
or dword [ebp - 4], 0xffffffff
pop ecx
cmp dword [ebp + 0xc], esi
jne 0x10187729
mov ecx, dword [ebp - 0x304]
add ecx, 0x1f4
call fcn.101801d0
push eax
lea ecx, [ebp - 0x2f0]
call fcn.101a15b8
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 4
call fcn.10164774
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x280]
push eax
mov byte [ebp - 4], 5
call fcn.101dd5be
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x54]
lea ecx, [ebp - 0x318]
call fcn.1019a2c5
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x50]
lea ecx, [ebp - 0x300]
call fcn.1019a2c5
lea eax, [ebp - 0x300]
push eax
lea ecx, [ebp - 0x318]
call fcn.10316997
test al, al
jne 0x10187709
push 7
pop esi
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
push 0x10002628
lea ecx, [ebp - 0x318]
mov byte [ebp - 4], 6
call fcn.1017ed03
mov ecx, eax
call fcn.101dc0eb
push edi
lea ecx, [ebp - 0x484]
call fcn.101cd7e1
lea eax, [ebp - 0x484]
push eax
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 4], 7
call fcn.101bf2d9
test al, al
je 0x101876b9
lea ecx, [ebp - 0x35c]
call fcn.101defaf
push 0x1000b620
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 8
call fcn.10161547
lea ecx, [ebp - 0x35c]
push ecx
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 9
call fcn.101ddc87
push ebx
push edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 8
call fcn.10161215
lea ecx, [ebp - 0x35c]
mov dword [ebp - 0x2f8], ebx
call fcn.101df02b
test eax, eax
jle 0x101876aa
lea ecx, [ebp - 0x110]
call fcn.101dd8ed
lea eax, [ebp - 0x110]
push eax
push dword [ebp - 0x2f8]
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0xa
call fcn.101df0b0
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x57c]
call fcn.101df437
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
lea eax, [ebp - 0x48]
push eax
push 0x103a47a0
lea ecx, [ebp - 0x57c]
mov byte [ebp - 4], 0xc
call fcn.101df489
mov ecx, dword [ebp - 0x304]
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x310]
push eax
add ecx, 0x194
call fcn.10194306
mov ecx, dword [ebp - 0x304]
mov eax, dword [ecx + 0x1b0]
add ecx, 0x19c
push ecx
push eax
lea ecx, [ebp - 0x320]
call fcn.1016a038
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x320]
call fcn.10316997
test al, al
jne 0x10187665
push ebx
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x68], esi
call fcn.101610ee
lea eax, [ebp - 0x80]
push eax
push 0x103a474c
lea ecx, [ebp - 0x57c]
mov byte [ebp - 4], 0xd
call fcn.101df489
test al, al
je 0x101875e5
push 0x103a4784
lea ecx, [ebp - 0x80]
call fcn.1016a011
neg eax
sbb al, al
inc al
lea ecx, [ebp - 0x310]
mov byte [ebp - 0x2f1], al
call fcn.10169f90
lea ecx, [eax + 0x1c]
call fcn.101d122d
mov cl, byte [ebp - 0x2f1]
mov byte [eax + 0x49], cl
push ebx
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x84], esi
call fcn.101610ee
lea eax, [ebp - 0x9c]
push eax
push 0x103a4768
lea ecx, [ebp - 0x57c]
mov byte [ebp - 4], 0xe
call fcn.101df489
test al, al
je 0x1018764e
push 0x103a4784
lea ecx, [ebp - 0x9c]
call fcn.1016a011
neg eax
sbb al, al
inc al
lea ecx, [ebp - 0x310]
mov byte [ebp - 0x2f1], al
call fcn.10169f90
lea ecx, [eax + 0x1c]
call fcn.101d122d
mov cl, byte [ebp - 0x2f1]
mov byte [eax + 0x4a], cl
push ebx
push edi
lea ecx, [ebp - 0x9c]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x80]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
lea ecx, [ebp - 0x57c]
mov byte [ebp - 4], 0xa
call fcn.1017f1c7
lea ecx, [ebp - 0x110]
mov byte [ebp - 4], 8
call fcn.101dd940
inc dword [ebp - 0x2f8]
lea ecx, [ebp - 0x35c]
call fcn.101df02b
cmp dword [ebp - 0x2f8], eax
jl 0x101874d6
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 7
call fcn.101deff6
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 6
call fcn.101cd397
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
lea ecx, [ebp - 0x318]
call fcn.1017ed5a
lea eax, [ebp - 0x60]
push eax
push dword [ebp - 0x50]
lea ecx, [ebp - 0x300]
call fcn.1019a2c5
lea eax, [ebp - 0x300]
push eax
lea ecx, [ebp - 0x318]
call fcn.10316997
test al, al
je 0x10187429
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 4
call fcn.10182712
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2f0]
call fcn.101a14f9
jmp 0x1018893a
cmp dword [ebp + 0xc], ebx
jne 0x1018893a
mov eax, dword [ebp - 0x304]
cmp dword [eax + 0x238], ebx
je 0x1018893a
push 0x1000b608
lea ecx, [ebp - 0x2c]
call fcn.10161547
push 2
push eax
mov dword [ebp - 4], 0xf
call fcn.1019db34
or dword [ebp - 4], 0xffffffff
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push 0x30001
call fcn.101cc48a
test eax, eax
jge 0x101877af
push 0x1000b598
lea ecx, [ebp - 0x2c]
call fcn.10161547
push ebx
push ebx
lea eax, [ebp - 0x2c]
push eax
push 2
mov dword [ebp - 4], 0x10
call fcn.101c5823
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push 2
pop eax
jmp 0x1018893c
push edi
lea ecx, [ebp - 0x484]
call fcn.101cd7e1
mov ecx, dword [ebp - 0x304]
lea eax, [ebp - 0x484]
push eax
add ecx, 0x224
mov dword [ebp - 4], 0x11
call fcn.101a42ff
lea ecx, [ebp - 0x4f4]
call fcn.101defaf
push 0x1000b530
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x12
call fcn.10161547
lea eax, [ebp - 0x4f4]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x13
call fcn.101ddc87
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x12
call fcn.10161215
lea ecx, [ebp - 0x4f4]
mov dword [ebp - 0x2fc], ebx
call fcn.101df02b
push 7
pop esi
test eax, eax
jle 0x10187a3b
lea ecx, [ebp - 0x3cc]
call fcn.101dd8ed
lea eax, [ebp - 0x3cc]
push eax
push dword [ebp - 0x2fc]
lea ecx, [ebp - 0x4f4]
mov byte [ebp - 4], 0x14
call fcn.101df0b0
lea eax, [ebp - 0x3cc]
push eax
lea ecx, [ebp - 0x604]
call fcn.101df437
push ebx
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x68], esi
call fcn.101610ee
push ebx
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], esi
call fcn.101610ee
push 0x1000b51c
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x17
call fcn.10161547
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x18
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x9c]
call fcn.10161215
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
push 0x1000b510
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x19
call fcn.10161547
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x1a
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x9c]
call fcn.10161215
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
push 0x1000b4f8
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x1b
call fcn.10161547
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x9c]
push eax
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x1c
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x9c]
call fcn.10161215
lea ecx, [ebp - 0x100]
call fcn.10180fe1
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0xf4]
mov byte [ebp - 4], 0x1d
call fcn.10161420
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0xd8]
call fcn.10161420
push ebx
push 0x103a4784
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f00
mov ecx, dword [ebp - 0x2f8]
neg eax
sbb al, al
inc al
mov byte [ebp - 0xfd], al
lea eax, [ebp - 0x100]
push eax
add ecx, 0x49c
mov byte [ebp - 0x100], 1
mov byte [ebp - 0xff], bl
mov dword [ebp - 0xf8], ebx
call fcn.10186b10
lea ecx, [ebp - 0x100]
call fcn.1018010b
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x64]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x80]
call fcn.10161215
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x14
call fcn.1017f1c7
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x12
call fcn.101dd940
inc dword [ebp - 0x2fc]
lea ecx, [ebp - 0x4f4]
call fcn.101df02b
cmp dword [ebp - 0x2fc], eax
jl 0x1018783a
lea ecx, [ebp - 0x4bc]
call fcn.101defaf
push 0x1000b490
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x1e
call fcn.10161547
lea eax, [ebp - 0x4bc]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x1f
call fcn.101ddc87
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x1e
call fcn.10161215
lea ecx, [ebp - 0x4bc]
mov dword [ebp - 0x2fc], ebx
call fcn.101df02b
test eax, eax
jle 0x10187bb5
lea ecx, [ebp - 0x3cc]
call fcn.101dd8ed
lea eax, [ebp - 0x3cc]
push eax
push dword [ebp - 0x2fc]
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 0x20
call fcn.101df0b0
lea eax, [ebp - 0x3cc]
push eax
lea ecx, [ebp - 0x604]
call fcn.101df437
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
push 0x1000b480
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x22
call fcn.10161547
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x23
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x80]
call fcn.10161215
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
push 0x1000b474
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x24
call fcn.10161547
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x25
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x24
call fcn.10161215
mov ecx, dword [ebp - 0x2f8]
push 5
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1018f9f0
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
lea ecx, [ebp - 0x604]
mov byte [ebp - 4], 0x20
call fcn.1017f1c7
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x1e
call fcn.101dd940
inc dword [ebp - 0x2fc]
lea ecx, [ebp - 0x4bc]
call fcn.101df02b
cmp dword [ebp - 0x2fc], eax
jl 0x10187a98
lea ecx, [ebp - 0x564]
call fcn.101dd8ed
push 0x1000b418
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x26
call fcn.10161547
lea eax, [ebp - 0x564]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x27
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x26
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187c69
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x564]
mov byte [ebp - 4], 0x28
call fcn.101ddea4
push ebx
push 0x103a4784
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f00
mov ecx, dword [ebp - 0x2f8]
neg eax
sbb al, al
inc al
add ecx, 0x24c
push 5
lea edx, [ebp - 0x2f1]
mov byte [ebp - 0x2f1], al
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x26
call fcn.10161215
lea ecx, [ebp - 0x768]
call fcn.101dd8ed
push 0x1000b3c0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x29
call fcn.10161547
lea eax, [ebp - 0x768]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x2a
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x29
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187cff
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 0x2b
call fcn.101ddea4
mov ecx, dword [ebp - 0x2f8]
push 5
lea eax, [ebp - 0x2c]
push eax
add ecx, 0x234
call fcn.1018e706
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x29
call fcn.10161215
lea ecx, [ebp - 0xa78]
call fcn.101dd8ed
push 0x1000b360
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x2c
call fcn.10161547
lea ecx, [ebp - 0xa78]
push ecx
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x2d
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x2c
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187db0
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xa78]
mov byte [ebp - 4], 0x2e
call fcn.101ddea4
push ebx
push 0x103a4784
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f00
mov ecx, dword [ebp - 0x2f8]
neg eax
sbb al, al
inc al
add ecx, 0x25c
push 5
lea edx, [ebp - 0x2f1]
mov byte [ebp - 0x2f1], al
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x2c
call fcn.10161215
lea ecx, [ebp - 0x8b8]
call fcn.101dd8ed
push 0x1000b300
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x2f
call fcn.10161547
lea eax, [ebp - 0x8b8]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x30
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x2f
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187e64
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x8b8]
mov byte [ebp - 4], 0x31
call fcn.101ddea4
push ebx
push 0x103a4784
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f00
mov ecx, dword [ebp - 0x2f8]
neg eax
sbb al, al
inc al
add ecx, 0x26c
push 5
lea edx, [ebp - 0x2f1]
mov byte [ebp - 0x2f1], al
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x2f
call fcn.10161215
lea ecx, [ebp - 0x998]
call fcn.101dd8ed
push 0x1000b2b0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x32
call fcn.10161547
lea eax, [ebp - 0x998]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x33
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x32
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187f18
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x998]
mov byte [ebp - 4], 0x34
call fcn.101ddea4
push ebx
push 0x103a4784
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f00
mov ecx, dword [ebp - 0x2f8]
neg eax
sbb al, al
inc al
add ecx, 0x284
push 5
lea edx, [ebp - 0x2f1]
mov byte [ebp - 0x2f1], al
mov eax, dword [ecx]
push edx
call dword [eax + 4]
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x32
call fcn.10161215
lea ecx, [ebp - 0x7d8]
call fcn.101dd8ed
push 0x1000b260
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x35
call fcn.10161547
lea eax, [ebp - 0x7d8]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x36
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x35
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10187ff5
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x7d8]
mov byte [ebp - 4], 0x38
call fcn.101ddea4
push 0x1000b228
lea ecx, [ebp - 0x80]
call fcn.10161547
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 4], 0x39
call fcn.101d3b1f
push ebx
push edi
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x38
call fcn.10161215
mov ecx, dword [ebp - 0x2f8]
add ecx, 0x12c
mov eax, dword [ecx]
push 5
lea edx, [ebp - 0x48]
push edx
call dword [eax + 4]
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x35
call fcn.10161215
lea ecx, [ebp - 0xae8]
call fcn.101dd8ed
push 0x1000b1d0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x3a
call fcn.10161547
lea eax, [ebp - 0xae8]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x3b
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x3a
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x101880a4
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xae8]
mov byte [ebp - 4], 0x3c
call fcn.101ddea4
push 0x10005d5c
lea ecx, [ebp - 0x48]
call fcn.10161547
mov ecx, dword [ebp - 0x2f8]
push 5
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 4], 0x3d
call fcn.1018f9f0
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x3a
call fcn.10161215
lea ecx, [ebp - 0xa08]
call fcn.101dd8ed
push 0x1000b170
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x3e
call fcn.10161547
lea eax, [ebp - 0xa08]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x3f
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x3e
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10188153
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xa08]
mov byte [ebp - 4], 0x40
call fcn.101ddea4
push 0x10003ae0
lea ecx, [ebp - 0x48]
call fcn.10161547
mov ecx, dword [ebp - 0x2f8]
push 5
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 4], 0x41
call fcn.1018f9f0
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x3e
call fcn.10161215
lea ecx, [ebp - 0x928]
call fcn.101dd8ed
push 0x1000b110
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x42
call fcn.10161547
lea ecx, [ebp - 0x928]
push ecx
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x43
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x42
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10188213
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x928]
mov byte [ebp - 4], 0x44
call fcn.101ddea4
push ebx
push 0x1000b104
lea eax, [ebp - 0x2c]
push eax
call fcn.101c4f33
test eax, eax
jne 0x10188205
push 0x1000b0d0
lea ecx, [ebp - 0x48]
call fcn.10161547
mov ecx, dword [ebp - 0x2f8]
push 5
push 0x103a4a28
lea eax, [ebp - 0x48]
push eax
mov byte [ebp - 4], 0x45
call fcn.1018f9f0
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x42
call fcn.10161215
lea ecx, [ebp - 0x6f8]
call fcn.101dd8ed
push 0x1000b078
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x46
call fcn.10161547
lea eax, [ebp - 0x6f8]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x47
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x46
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x1018835e
push ebx
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], esi
call fcn.101610ee
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x6f8]
mov byte [ebp - 4], 0x48
call fcn.101ddea4
mov ecx, dword [ebp - 0x2f8]
lea eax, [ebp - 0x2c]
push eax
call fcn.1017f689
mov ecx, eax
mov byte [ebp - 4], 0x49
call fcn.101d122d
add eax, 0x40
cmp dword [eax + 0x14], ebx
lea ecx, [ebp - 0x2c]
sete byte [ebp - 0x2f1]
mov byte [ebp - 4], 0x48
call fcn.10168122
mov ecx, dword [ebp - 0x2f8]
lea eax, [ebp - 0x2c]
push eax
call fcn.1017f689
cmp byte [ebp - 0x2f1], bl
je 0x101882f3
mov ecx, eax
mov byte [ebp - 4], 0x4a
call fcn.101d122d
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x64]
add eax, 0x40
push ecx
mov ecx, eax
call fcn.10161420
lea ecx, [ebp - 0x2c]
jmp 0x10188347
push 0x1000abc8
mov ecx, eax
mov byte [ebp - 4], 0x4b
call fcn.101d122d
mov ecx, eax
add ecx, 0x40
call fcn.101630bd
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x48
call fcn.10168122
mov ecx, dword [ebp - 0x2f8]
lea eax, [ebp - 0x48]
push eax
call fcn.1017f689
mov ecx, eax
mov byte [ebp - 4], 0x4c
call fcn.101d122d
push 0xffffffffffffffff
push ebx
lea ecx, [ebp - 0x64]
add eax, 0x40
push ecx
mov ecx, eax
call fcn.10162a70
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x48
call fcn.10168122
push ebx
push edi
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x46
call fcn.10161215
lea ecx, [ebp - 0x35c]
call fcn.101defaf
push 0x1000b620
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x4d
call fcn.10161547
lea ecx, [ebp - 0x35c]
push ecx
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x4e
call fcn.101ddc87
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x4d
call fcn.10161215
lea ecx, [ebp - 0x35c]
mov dword [ebp - 0x2fc], ebx
call fcn.101df02b
test eax, eax
jle 0x10188630
lea ecx, [ebp - 0x3cc]
call fcn.101dd8ed
lea eax, [ebp - 0x3cc]
push eax
push dword [ebp - 0x2fc]
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x4f
call fcn.101df0b0
lea eax, [ebp - 0x3cc]
push eax
lea ecx, [ebp - 0x128]
call fcn.101df437
push ebx
lea ecx, [ebp - 0x80]
mov dword [ebp - 0x68], esi
call fcn.101610ee
lea eax, [ebp - 0x80]
push eax
push 0x103a47a0
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x51
call fcn.101df489
mov ecx, dword [ebp - 0x304]
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x310]
push eax
add ecx, 0x194
call fcn.10194306
mov eax, dword [ebp - 0x304]
mov ecx, dword [eax + 0x1b0]
add eax, 0x19c
push eax
push ecx
lea ecx, [ebp - 0x320]
call fcn.1016a038
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x320]
call fcn.10316997
test al, al
jne 0x101885eb
push ebx
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], esi
call fcn.101610ee
push 0x1000b05c
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x52
call fcn.10161547
lea ecx, [ebp - 0x64]
push ecx
push eax
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x53
call fcn.101df489
push ebx
push edi
lea ecx, [ebp - 0x9c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x52
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10188513
push 0xa
lea eax, [ebp - 0x64]
push eax
call fcn.101c435a
dec eax
je 0x101884ec
dec eax
je 0x101884e0
dec eax
jne 0x101886cd
mov dword [ebp - 0x314], 3
jmp 0x101884f2
mov dword [ebp - 0x314], 2
jmp 0x101884f2
mov dword [ebp - 0x314], edi
lea ecx, [ebp - 0x310]
call fcn.10169f90
lea ecx, [eax + 0x1c]
call fcn.101d122d
push edi
push dword [ebp - 0x314]
mov ecx, eax
call fcn.1017d2d5
push ebx
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
lea eax, [ebp - 0x48]
push eax
push 0x103a474c
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x54
call fcn.101df489
test al, al
je 0x10188570
push 0x103a4784
lea ecx, [ebp - 0x48]
call fcn.1016a011
neg eax
sbb al, al
inc al
lea ecx, [ebp - 0x310]
mov byte [ebp - 0x2f1], al
call fcn.10169f90
lea ecx, [eax + 0x1c]
call fcn.101d122d
mov cl, byte [ebp - 0x2f1]
mov byte [eax + 0x49], cl
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea eax, [ebp - 0x2c]
push eax
push 0x103a4768
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x55
call fcn.101df489
test al, al
je 0x101885cd
push 0x103a4784
lea ecx, [ebp - 0x2c]
call fcn.1016a011
neg eax
sbb al, al
inc al
lea ecx, [ebp - 0x310]
mov byte [ebp - 0x2f1], al
call fcn.10169f90
lea ecx, [eax + 0x1c]
call fcn.101d122d
mov cl, byte [ebp - 0x2f1]
mov byte [eax + 0x4a], cl
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x64]
call fcn.10161215
push ebx
push edi
lea ecx, [ebp - 0x80]
call fcn.10161215
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x4f
call fcn.1017f1c7
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x4d
call fcn.101dd940
inc dword [ebp - 0x2fc]
lea ecx, [ebp - 0x35c]
call fcn.101df02b
cmp dword [ebp - 0x2fc], eax
jl 0x101883b8
lea ecx, [ebp - 0x848]
call fcn.101dd8ed
push 0x1000b018
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x56
call fcn.10161547
lea ecx, [ebp - 0x848]
push ecx
push eax
lea ecx, [ebp - 0x484]
mov byte [ebp - 4], 0x57
call fcn.101ddd6b
push ebx
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2f1], al
mov byte [ebp - 4], 0x56
call fcn.10161215
cmp byte [ebp - 0x2f1], bl
je 0x10188859
lea ecx, [ebp - 0xa0]
call fcn.101b309a
mov ecx, dword [ebp - 0x304]
lea eax, [ebp - 0x320]
add ecx, 0x3cc
push eax
mov dword [ebp - 0x2fc], ecx
call fcn.10316dc9
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x2fc]
mov dword [ebp - 0x308], ecx
mov ecx, dword [eax + 0x18]
push eax
push ecx
jmp 0x101887e5
cmp dword [ebp - 0x4c], 8
mov eax, dword [ebp - 0x60]
jae 0x101886d9
lea eax, [ebp - 0x60]
push eax
push 0x1000afd0
lea eax, [ebp - 0x234]
push 0x21
push eax
call fcn.10161ac8
add esp, 0x10
push 0x43
pop ecx
mov esi, eax
push 0x103495b0
lea eax, [ebp - 0x688]
lea edi, [ebp - 0x688]
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.102f72b2
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], esi
call fcn.101610ee
lea ecx, [ebp - 0x308]
mov byte [ebp - 4], 0x59
call fcn.10316968
cmp dword [eax + 0x18], 8
jb 0x10188733
mov eax, dword [eax + 4]
jmp 0x10188736
add eax, 4
mov dword [ebp - 0x314], eax
lea eax, [ebp - 0x314]
push eax
push 0x1000af70
lea eax, [ebp - 0x80]
push eax
call fcn.1016225b
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x5a
call fcn.10161420
push ebx
push edi
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x59
call fcn.10161215
lea ecx, [ebp - 0x3cc]
call fcn.101dd8ed
lea eax, [ebp - 0x3cc]
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x848]
mov byte [ebp - 4], 0x5b
call fcn.101ddd6b
test al, al
je 0x101887b6
lea ecx, [ebp - 0x308]
call fcn.10316968
push eax
lea eax, [ebp - 0x324]
push eax
lea ecx, [ebp - 0xa0]
call fcn.101b2e6d
lea ecx, [ebp - 0x3cc]
mov byte [ebp - 4], 0x59
call fcn.101dd940
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10161215
lea ecx, [ebp - 0x308]
call fcn.101b281b
mov ecx, dword [ebp - 0x2fc]
mov eax, dword [ecx + 0x18]
push ecx
push eax
lea ecx, [ebp - 0x310]
call fcn.1016a038
lea eax, [ebp - 0x310]
push eax
lea ecx, [ebp - 0x308]
call fcn.10316997
push ebx
test al, al
je 0x1018870e
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], esi
call fcn.101610ee
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0xa0]
push eax
mov byte [ebp - 4], 0x5c
call fcn.1019aa9f
mov ecx, dword [ebp - 0x2f8]
push 5
lea eax, [ebp - 0x48]
push eax
push 0x103a48f4
call fcn.1018f9f0
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10161215
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x56
call fcn.101b3072
lea ecx, [ebp - 0x848]
mov byte [ebp - 4], 0x4d
call fcn.101dd940
lea ecx, [ebp - 0x35c]
mov byte [ebp - 4], 0x46
call fcn.101deff6
lea ecx, [ebp - 0x6f8]
mov byte [ebp - 4], 0x42
call fcn.101dd940
lea ecx, [ebp - 0x928]
mov byte [ebp - 4], 0x3e
call fcn.101dd940
lea ecx, [ebp - 0xa08]
mov byte [ebp - 4], 0x3a
call fcn.101dd940
lea ecx, [ebp - 0xae8]
mov byte [ebp - 4], 0x35
call fcn.101dd940
lea ecx, [ebp - 0x7d8]
mov byte [ebp - 4], 0x32
call fcn.101dd940
lea ecx, [ebp - 0x998]
mov byte [ebp - 4], 0x2f
call fcn.101dd940
lea ecx, [ebp - 0x8b8]
mov byte [ebp - 4], 0x2c
call fcn.101dd940
lea ecx, [ebp - 0xa78]
mov byte [ebp - 4], 0x29
call fcn.101dd940
lea ecx, [ebp - 0x768]
mov byte [ebp - 4], 0x26
call fcn.101dd940
lea ecx, [ebp - 0x564]
mov byte [ebp - 4], 0x1e
call fcn.101dd940
lea ecx, [ebp - 0x4bc]
mov byte [ebp - 4], 0x12
call fcn.101deff6
lea ecx, [ebp - 0x4f4]
mov byte [ebp - 4], 0x11
call fcn.101deff6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x484]
call fcn.101cd397
xor eax, eax
call fcn.102f78a0
ret 8