Function at 0x1013f7f0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xb0
mov eax, dword [0x101c52b4]
xor eax, esp
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0xb8]
push ebp
mov ebp, dword [esp + 0xb8]
test ebp, ebp
mov dword [esp + 4], eax
je 0x10140a76
mov al, byte [ebp + 0x12c]
cmp al, 8
push ebx
push esi
push edi
jae 0x1013f897
mov ebx, dword [esp + 0x10]
movzx edi, al
mov esi, 8
sub esi, edi
push esi
lea ecx, [ebx + edi + 0x20]
push ecx
push ebp
call fcn.101429e0
push esi
add ebx, 0x20
push edi
push ebx
mov byte [ebp + 0x12c], 8
call fcn.1013edc0
add esp, 0x18
test eax, eax
je 0x1013f88b
cmp edi, 4
jae 0x1013f87d
add esi, 0xfffffffc
push esi
push edi
push ebx
call fcn.1013edc0
add esp, 0xc
test eax, eax
je 0x1013f87d
push 0x10191274
jmp 0x1013f882
push 0x1019124c
push ebp
call fcn.1013ec00
add esp, 8
cmp edi, 3
jae 0x1013f897
or dword [ebp + 0x68], 0x1000
mov al, 0x44
mov byte [esp + 0x8e], al
mov byte [esp + 0x1d], al
mov byte [esp + 0x3f], al
mov byte [esp + 0x7f], al
mov al, 0x46
mov dl, 0x49
mov bl, 0x41
mov cl, 0x54
mov byte [esp + 0x2d], al
mov byte [esp + 0x2e], al
mov al, 0x73
mov byte [esp + 0x8c], dl
mov byte [esp + 0x8d], 0x48
mov byte [esp + 0x8f], 0x52
mov byte [esp + 0x90], 0
mov byte [esp + 0x1c], dl
mov byte [esp + 0x1e], bl
mov byte [esp + 0x1f], cl
mov byte [esp + 0x20], 0
mov byte [esp + 0x3c], dl
mov byte [esp + 0x3d], 0x45
mov byte [esp + 0x3e], 0x4e
mov byte [esp + 0x40], 0
mov byte [esp + 0x24], 0x50
mov byte [esp + 0x25], 0x4c
mov byte [esp + 0x26], cl
mov byte [esp + 0x27], 0x45
mov byte [esp + 0x28], 0
mov byte [esp + 0x7c], 0x62
mov byte [esp + 0x7d], 0x4b
mov byte [esp + 0x7e], 0x47
mov byte [esp + 0x80], 0
mov byte [esp + 0x4c], 0x63
mov byte [esp + 0x4d], 0x48
mov byte [esp + 0x4e], 0x52
mov byte [esp + 0x4f], 0x4d
mov byte [esp + 0x50], 0
mov byte [esp + 0x9c], 0x67
mov byte [esp + 0x9d], bl
mov byte [esp + 0x9e], 0x4d
mov byte [esp + 0x9f], bl
mov byte [esp + 0xa0], 0
mov byte [esp + 0x5c], 0x68
mov byte [esp + 0x5d], dl
mov byte [esp + 0x5e], 0x53
mov byte [esp + 0x5f], cl
mov byte [esp + 0x60], 0
mov byte [esp + 0x64], 0x69
mov byte [esp + 0x65], 0x43
mov byte [esp + 0x66], 0x43
mov byte [esp + 0x67], 0x50
mov byte [esp + 0x68], 0
mov byte [esp + 0x2c], 0x6f
mov byte [esp + 0x2f], al
mov byte [esp + 0x30], 0
mov byte [esp + 0x6c], 0x70
mov byte [esp + 0x6d], 0x43
mov byte [esp + 0x6e], bl
mov byte [esp + 0x6f], 0x4c
mov byte [esp + 0x70], 0
mov byte [esp + 0x34], 0x70
mov byte [esp + 0x35], 0x48
mov byte [esp + 0x36], 0x59
mov byte [esp + 0x37], al
mov byte [esp + 0x38], 0
mov byte [esp + 0x44], al
mov byte [esp + 0x45], 0x42
mov byte [esp + 0x46], dl
mov byte [esp + 0x47], cl
mov byte [esp + 0x48], 0
mov byte [esp + 0xac], al
mov byte [esp + 0xad], 0x43
mov byte [esp + 0xae], bl
mov byte [esp + 0xaf], 0x4c
mov byte [esp + 0xb0], 0
mov byte [esp + 0x74], al
mov byte [esp + 0x75], 0x50
mov byte [esp + 0x76], 0x4c
mov byte [esp + 0x77], cl
mov byte [esp + 0x78], 0
mov byte [esp + 0x54], al
mov al, 0x74
mov bl, 0x58
mov byte [esp + 0x55], 0x52
mov byte [esp + 0x56], 0x47
mov byte [esp + 0x57], 0x42
mov byte [esp + 0x58], 0
mov byte [esp + 0x84], al
mov byte [esp + 0x85], 0x45
mov byte [esp + 0x86], bl
mov byte [esp + 0x87], al
mov byte [esp + 0x88], 0
mov byte [esp + 0x94], al
mov byte [esp + 0x95], dl
mov byte [esp + 0x96], 0x4d
mov byte [esp + 0x97], 0x45
mov byte [esp + 0x98], 0
mov byte [esp + 0xa4], al
mov byte [esp + 0xa5], 0x52
mov byte [esp + 0xa6], 0x4e
mov byte [esp + 0xa7], 0x53
mov byte [esp + 0xa8], 0
mov byte [esp + 0xb4], 0x7a
mov byte [esp + 0xb5], cl
mov byte [esp + 0xb6], bl
mov byte [esp + 0xb7], al
mov byte [esp + 0xb8], 0
lea edi, [ebp + 0x11c]
lea esp, [esp]
push 4
lea edx, [esp + 0x1c]
push edx
push ebp
call fcn.101429e0
lea eax, [esp + 0x24]
push eax
push ebp
call fcn.10146430
push ebp
mov dword [esp + 0x2c], eax
call fcn.1013ef50
push 4
push edi
push ebp
call fcn.10145330
add esp, 0x24
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fb48
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fb30
test eax, eax
je 0x1013fba5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fb97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fba5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fb97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fba5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fb97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fba5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x1013fba5
test esi, esi
mov eax, 1
jg 0x1013fba7
or eax, 0xffffffff
jmp 0x1013fba7
xor eax, eax
test eax, eax
jne 0x1013fbba
mov eax, dword [ebp + 0x68]
test al, 8
je 0x1013fbba
or eax, 0x2000
mov dword [ebp + 0x68], eax
mov eax, 4
lea ecx, [esp + 0x8c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fbe0
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fbc8
test eax, eax
je 0x1013fc3d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fc2f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fc3d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fc2f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fc3d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fc2f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fc3d
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x1013fc3d
test esi, esi
mov eax, 1
jg 0x1013fc3f
or eax, 0xffffffff
jmp 0x1013fc3f
xor eax, eax
test eax, eax
jne 0x1013fc5b
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10146520
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x3c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fc7e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fc66
test eax, eax
je 0x1013fcdb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fccd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fcdb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fccd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fcdb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fccd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fcdb
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x1013fcdb
test esi, esi
mov eax, 1
jg 0x1013fcdd
or eax, 0xffffffff
jmp 0x1013fcdd
xor eax, eax
test eax, eax
jne 0x1013fcf9
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10146830
add esp, 0xc
jmp 0x1013faf0
push edi
push ebp
call fcn.1013f440
add esp, 8
test eax, eax
mov edx, edi
mov eax, 4
je 0x1013fedf
lea ecx, [esp + 0x1c]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fd2e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fd16
test eax, eax
je 0x1013fd8b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fd7d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fd8b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fd7d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fd8b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fd7d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fd8b
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x1013fd8b
test esi, esi
mov eax, 1
jg 0x1013fd8d
or eax, 0xffffffff
jmp 0x1013fd8d
xor eax, eax
test eax, eax
jne 0x1013fd95
or dword [ebp + 0x68], 4
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10148630
add esp, 0xc
mov eax, 4
lea ecx, [esp + 0x24]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fdcb
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fdb3
test eax, eax
je 0x1013fe28
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fe1a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fe28
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fe1a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fe28
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013fe1a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fe28
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x1013fe28
test esi, esi
mov eax, 1
jg 0x1013fe2a
or eax, 0xffffffff
jmp 0x1013fe2a
xor eax, eax
test eax, eax
jne 0x1013fe37
or dword [ebp + 0x68], 2
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fe5a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fe42
test eax, eax
je 0x1013feb7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fea9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013feb7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fea9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013feb7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013fea9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013feb7
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x1013feb7
test esi, esi
mov eax, 1
jg 0x1013feb9
or eax, 0xffffffff
jmp 0x1013feb9
xor eax, eax
test eax, eax
jne 0x1013faf0
mov eax, dword [ebp + 0x68]
test al, 1
jne 0x10140a1f
push 0x10191230
push ebp
call fcn.1013ec00
add esp, 8
jmp 0x10140a73
lea ecx, [esp + 0x24]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013fefb
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013fee3
test eax, eax
je 0x1013ff58
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013ff4a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013ff58
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013ff4a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013ff58
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1013ff4a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013ff58
movzx esi, byte [edx]
movzx edx, byte [ecx]
sub esi, edx
je 0x1013ff58
test esi, esi
mov eax, 1
jg 0x1013ff5a
or eax, 0xffffffff
jmp 0x1013ff5a
xor eax, eax
test eax, eax
jne 0x1013ff76
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
push ebp
call fcn.101466a0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1013ff99
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x1013ff81
test eax, eax
je 0x1013fff6
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013ffe8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fff6
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013ffe8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fff6
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x1013ffe8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x1013fff6
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x1013fff6
test esi, esi
mov eax, 1
jg 0x1013fff8
or eax, 0xffffffff
jmp 0x1013fff8
xor eax, eax
test eax, eax
je 0x10140a3c
mov eax, 4
lea ecx, [esp + 0x7c]
mov edx, edi
jmp 0x10140010
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140028
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140010
test eax, eax
je 0x10140085
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140077
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140085
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140077
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140085
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140077
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140085
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140085
test esi, esi
mov eax, 1
jg 0x10140087
or eax, 0xffffffff
jmp 0x10140087
xor eax, eax
test eax, eax
jne 0x101400a3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147850
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x4c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101400c8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101400b0
test eax, eax
je 0x10140125
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140117
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140125
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140117
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140125
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140117
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140125
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10140125
test esi, esi
mov eax, 1
jg 0x10140127
or eax, 0xffffffff
jmp 0x10140127
xor eax, eax
test eax, eax
jne 0x10140143
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10146b60
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x9c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140169
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140151
test eax, eax
je 0x101401c6
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101401b8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101401c6
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101401b8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101401c6
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101401b8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101401c6
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x101401c6
test esi, esi
mov eax, 1
jg 0x101401c8
or eax, 0xffffffff
jmp 0x101401c8
xor eax, eax
test eax, eax
jne 0x101401e4
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10146880
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x5c]
mov edx, edi
nop
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140208
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101401f0
test eax, eax
je 0x10140265
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140257
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140265
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140257
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140265
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140257
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140265
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10140265
test esi, esi
mov eax, 1
jg 0x10140267
or eax, 0xffffffff
jmp 0x10140267
xor eax, eax
test eax, eax
jne 0x10140283
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147a90
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x2c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101402a8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140290
test eax, eax
je 0x10140305
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101402f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140305
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101402f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140305
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101402f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140305
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140305
test esi, esi
mov eax, 1
jg 0x10140307
or eax, 0xffffffff
jmp 0x10140307
xor eax, eax
test eax, eax
jne 0x10140323
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147d50
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x6c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140348
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140330
test eax, eax
je 0x101403a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140397
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101403a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140397
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101403a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140397
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101403a5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101403a5
test esi, esi
mov eax, 1
jg 0x101403a7
or eax, 0xffffffff
jmp 0x101403a7
xor eax, eax
test eax, eax
jne 0x101403c3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147e80
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0xac]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101403e9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101403d1
test eax, eax
je 0x10140446
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140438
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140446
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140438
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140446
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140438
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140446
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140446
test esi, esi
mov eax, 1
jg 0x10140448
or eax, 0xffffffff
jmp 0x10140448
xor eax, eax
test eax, eax
jne 0x10140464
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101480e0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x34]
mov edx, edi
nop
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140488
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140470
test eax, eax
je 0x101404e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101404d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101404e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101404d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101404e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101404d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101404e5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101404e5
test esi, esi
mov eax, 1
jg 0x101404e7
or eax, 0xffffffff
jmp 0x101404e7
xor eax, eax
test eax, eax
jne 0x10140503
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147c30
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x44]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140528
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140510
test eax, eax
je 0x10140585
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140577
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140585
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140577
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140585
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10140577
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140585
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140585
test esi, esi
mov eax, 1
jg 0x10140587
or eax, 0xffffffff
jmp 0x10140587
xor eax, eax
test eax, eax
jne 0x101405a3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101469f0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x54]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101405c8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101405b0
test eax, eax
je 0x10140625
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140617
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140625
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140617
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140625
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140617
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140625
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10140625
test esi, esi
mov eax, 1
jg 0x10140627
or eax, 0xffffffff
jmp 0x10140627
xor eax, eax
test eax, eax
jne 0x10140643
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147010
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x64]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140668
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140650
test eax, eax
je 0x101406c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101406b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101406c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101406b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101406c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101406b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101406c5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x101406c5
test esi, esi
mov eax, 1
jg 0x101406c7
or eax, 0xffffffff
jmp 0x101406c7
xor eax, eax
test eax, eax
jne 0x101406e3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10147210
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x74]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10140708
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101406f0
test eax, eax
je 0x10140765
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140757
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140765
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140757
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140765
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140757
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140765
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10140765
test esi, esi
mov eax, 1
jg 0x10140767
or eax, 0xffffffff
jmp 0x10140767
xor eax, eax
test eax, eax
jne 0x10140783
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101473d0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x84]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101407a9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140791
test eax, eax
je 0x10140806
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101407f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140806
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101407f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140806
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101407f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140806
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140806
test esi, esi
mov eax, 1
jg 0x10140808
or eax, 0xffffffff
jmp 0x10140808
xor eax, eax
test eax, eax
jne 0x10140824
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101483c0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0x94]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1014084a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140832
test eax, eax
je 0x101408a7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140899
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101408a7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140899
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101408a7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10140899
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101408a7
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101408a7
test esi, esi
mov eax, 1
jg 0x101408a9
or eax, 0xffffffff
jmp 0x101408a9
xor eax, eax
test eax, eax
jne 0x101408c5
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101482a0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0xa4]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101408eb
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101408d3
test eax, eax
je 0x10140948
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014093a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140948
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014093a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140948
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014093a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10140948
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10140948
test esi, esi
mov eax, 1
jg 0x1014094a
or eax, 0xffffffff
jmp 0x1014094a
xor eax, eax
test eax, eax
jne 0x10140966
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101475f0
add esp, 0xc
jmp 0x1013faf0
mov eax, 4
lea ecx, [esp + 0xb4]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1014098c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10140974
test eax, eax
je 0x101409e9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101409db
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101409e9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101409db
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101409e9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101409db
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101409e9
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101409e9
test esi, esi
mov eax, 1
jg 0x101409eb
or eax, 0xffffffff
jmp 0x101409eb
xor eax, eax
test eax, eax
jne 0x10140a07
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101484e0
add esp, 0xc
jmp 0x1013faf0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10148630
add esp, 0xc
jmp 0x1013faf0
cmp byte [ebp + 0x126], 3
jne 0x10140a73
test al, 2
jne 0x10140a73
push 0x10191214
push ebp
call fcn.1013ec00
add esp, 8
jmp 0x10140a73
mov eax, dword [ebp + 0x68]
test al, 1
jne 0x10140a4a
push 0x10191230
jmp 0x10140a5c
cmp byte [ebp + 0x126], 3
jne 0x10140a65
test al, 2
jne 0x10140a65
push 0x10191214
push ebp
call fcn.1013ec00
add esp, 8
mov eax, dword [esp + 0x14]
or dword [ebp + 0x68], 4
mov dword [ebp + 0x10c], eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xb0]
pop ebp
xor ecx, esp
call fcn.1010e4d7
add esp, 0xb0
ret