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

Disassembly:
sub esp, 0xb0
mov eax, dword [0x101ce2f4]
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 0x10148ab6
mov al, byte [ebp + 0x12c]
cmp al, 8
push ebx
push esi
push edi
jae 0x101478d7
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.1014aa20
push esi
add ebx, 0x20
push edi
push ebx
mov byte [ebp + 0x12c], 8
call fcn.10146e00
add esp, 0x18
test eax, eax
je 0x101478cb
cmp edi, 4
jae 0x101478bd
add esi, 0xfffffffc
push esi
push edi
push ebx
call fcn.10146e00
add esp, 0xc
test eax, eax
je 0x101478bd
push 0x1019a0a4
jmp 0x101478c2
push 0x1019a07c
push ebp
call fcn.10146c40
add esp, 8
cmp edi, 3
jae 0x101478d7
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.1014aa20
lea eax, [esp + 0x24]
push eax
push ebp
call fcn.1014e470
push ebp
mov dword [esp + 0x2c], eax
call fcn.10146f90
push 4
push edi
push ebp
call fcn.1014d370
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 0x10147b88
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147b70
test eax, eax
je 0x10147be5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147bd7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147be5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147bd7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147be5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147bd7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147be5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10147be5
test esi, esi
mov eax, 1
jg 0x10147be7
or eax, 0xffffffff
jmp 0x10147be7
xor eax, eax
test eax, eax
jne 0x10147bfa
mov eax, dword [ebp + 0x68]
test al, 8
je 0x10147bfa
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 0x10147c20
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147c08
test eax, eax
je 0x10147c7d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147c6f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147c7d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147c6f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147c7d
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147c6f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147c7d
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x10147c7d
test esi, esi
mov eax, 1
jg 0x10147c7f
or eax, 0xffffffff
jmp 0x10147c7f
xor eax, eax
test eax, eax
jne 0x10147c9b
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.1014e560
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x3c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147cbe
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147ca6
test eax, eax
je 0x10147d1b
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147d0d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147d1b
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147d0d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147d1b
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147d0d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147d1b
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x10147d1b
test esi, esi
mov eax, 1
jg 0x10147d1d
or eax, 0xffffffff
jmp 0x10147d1d
xor eax, eax
test eax, eax
jne 0x10147d39
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.1014e870
add esp, 0xc
jmp 0x10147b30
push edi
push ebp
call fcn.10147480
add esp, 8
test eax, eax
mov edx, edi
mov eax, 4
je 0x10147f1f
lea ecx, [esp + 0x1c]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147d6e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147d56
test eax, eax
je 0x10147dcb
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147dbd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147dcb
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147dbd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147dcb
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147dbd
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147dcb
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x10147dcb
test esi, esi
mov eax, 1
jg 0x10147dcd
or eax, 0xffffffff
jmp 0x10147dcd
xor eax, eax
test eax, eax
jne 0x10147dd5
or dword [ebp + 0x68], 4
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10150670
add esp, 0xc
mov eax, 4
lea ecx, [esp + 0x24]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147e0b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147df3
test eax, eax
je 0x10147e68
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147e5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147e68
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147e5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147e68
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147e5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147e68
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x10147e68
test esi, esi
mov eax, 1
jg 0x10147e6a
or eax, 0xffffffff
jmp 0x10147e6a
xor eax, eax
test eax, eax
jne 0x10147e77
or dword [ebp + 0x68], 2
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147e9a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147e82
test eax, eax
je 0x10147ef7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147ee9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147ef7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147ee9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147ef7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10147ee9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147ef7
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10147ef7
test esi, esi
mov eax, 1
jg 0x10147ef9
or eax, 0xffffffff
jmp 0x10147ef9
xor eax, eax
test eax, eax
jne 0x10147b30
mov eax, dword [ebp + 0x68]
test al, 1
jne 0x10148a5f
push 0x1019a060
push ebp
call fcn.10146c40
add esp, 8
jmp 0x10148ab3
lea ecx, [esp + 0x24]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147f3b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147f23
test eax, eax
je 0x10147f98
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147f8a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147f98
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147f8a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147f98
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10147f8a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10147f98
movzx esi, byte [edx]
movzx edx, byte [ecx]
sub esi, edx
je 0x10147f98
test esi, esi
mov eax, 1
jg 0x10147f9a
or eax, 0xffffffff
jmp 0x10147f9a
xor eax, eax
test eax, eax
jne 0x10147fb6
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
push eax
push ecx
push ebp
call fcn.1014e6e0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10147fd9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10147fc1
test eax, eax
je 0x10148036
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148028
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148036
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148028
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148036
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148028
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148036
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x10148036
test esi, esi
mov eax, 1
jg 0x10148038
or eax, 0xffffffff
jmp 0x10148038
xor eax, eax
test eax, eax
je 0x10148a7c
mov eax, 4
lea ecx, [esp + 0x7c]
mov edx, edi
jmp 0x10148050
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148068
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148050
test eax, eax
je 0x101480c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101480b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101480c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101480b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101480c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101480b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101480c5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x101480c5
test esi, esi
mov eax, 1
jg 0x101480c7
or eax, 0xffffffff
jmp 0x101480c7
xor eax, eax
test eax, eax
jne 0x101480e3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014f890
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x4c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148108
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101480f0
test eax, eax
je 0x10148165
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148157
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148165
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148157
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148165
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148157
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148165
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10148165
test esi, esi
mov eax, 1
jg 0x10148167
or eax, 0xffffffff
jmp 0x10148167
xor eax, eax
test eax, eax
jne 0x10148183
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014eba0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x9c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101481a9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148191
test eax, eax
je 0x10148206
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101481f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148206
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101481f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148206
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101481f8
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148206
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148206
test esi, esi
mov eax, 1
jg 0x10148208
or eax, 0xffffffff
jmp 0x10148208
xor eax, eax
test eax, eax
jne 0x10148224
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014e8c0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x5c]
mov edx, edi
nop
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148248
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148230
test eax, eax
je 0x101482a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148297
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101482a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148297
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101482a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148297
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101482a5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101482a5
test esi, esi
mov eax, 1
jg 0x101482a7
or eax, 0xffffffff
jmp 0x101482a7
xor eax, eax
test eax, eax
jne 0x101482c3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014fad0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x2c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101482e8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101482d0
test eax, eax
je 0x10148345
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148337
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148345
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148337
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148345
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148337
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148345
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148345
test esi, esi
mov eax, 1
jg 0x10148347
or eax, 0xffffffff
jmp 0x10148347
xor eax, eax
test eax, eax
jne 0x10148363
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014fd90
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x6c]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148388
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148370
test eax, eax
je 0x101483e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101483d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101483e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101483d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101483e5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101483d7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101483e5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101483e5
test esi, esi
mov eax, 1
jg 0x101483e7
or eax, 0xffffffff
jmp 0x101483e7
xor eax, eax
test eax, eax
jne 0x10148403
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014fec0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0xac]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148429
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148411
test eax, eax
je 0x10148486
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148478
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148486
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148478
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148486
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148478
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148486
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148486
test esi, esi
mov eax, 1
jg 0x10148488
or eax, 0xffffffff
jmp 0x10148488
xor eax, eax
test eax, eax
jne 0x101484a4
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10150120
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x34]
mov edx, edi
nop
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101484c8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101484b0
test eax, eax
je 0x10148525
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148517
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148525
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148517
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148525
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148517
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148525
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10148525
test esi, esi
mov eax, 1
jg 0x10148527
or eax, 0xffffffff
jmp 0x10148527
xor eax, eax
test eax, eax
jne 0x10148543
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014fc70
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x44]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148568
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148550
test eax, eax
je 0x101485c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101485b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101485c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101485b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101485c5
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101485b7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101485c5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x101485c5
test esi, esi
mov eax, 1
jg 0x101485c7
or eax, 0xffffffff
jmp 0x101485c7
xor eax, eax
test eax, eax
jne 0x101485e3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014ea30
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x54]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148608
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101485f0
test eax, eax
je 0x10148665
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148657
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148665
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148657
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148665
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148657
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148665
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10148665
test esi, esi
mov eax, 1
jg 0x10148667
or eax, 0xffffffff
jmp 0x10148667
xor eax, eax
test eax, eax
jne 0x10148683
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014f050
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x64]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101486a8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148690
test eax, eax
je 0x10148705
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101486f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148705
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101486f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148705
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x101486f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148705
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148705
test esi, esi
mov eax, 1
jg 0x10148707
or eax, 0xffffffff
jmp 0x10148707
xor eax, eax
test eax, eax
jne 0x10148723
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014f250
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x74]
mov edx, edi
mov edi, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x10148748
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148730
test eax, eax
je 0x101487a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148797
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101487a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148797
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101487a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148797
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101487a5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101487a5
test esi, esi
mov eax, 1
jg 0x101487a7
or eax, 0xffffffff
jmp 0x101487a7
xor eax, eax
test eax, eax
jne 0x101487c3
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014f410
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x84]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101487e9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101487d1
test eax, eax
je 0x10148846
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148838
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148846
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148838
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148846
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x10148838
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148846
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148846
test esi, esi
mov eax, 1
jg 0x10148848
or eax, 0xffffffff
jmp 0x10148848
xor eax, eax
test eax, eax
jne 0x10148864
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10150400
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0x94]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1014888a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148872
test eax, eax
je 0x101488e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101488d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101488e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101488d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101488e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x101488d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x101488e7
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x101488e7
test esi, esi
mov eax, 1
jg 0x101488e9
or eax, 0xffffffff
jmp 0x101488e9
xor eax, eax
test eax, eax
jne 0x10148905
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.101502e0
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0xa4]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x1014892b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x10148913
test eax, eax
je 0x10148988
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014897a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148988
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014897a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148988
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x1014897a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148988
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x10148988
test esi, esi
mov eax, 1
jg 0x1014898a
or eax, 0xffffffff
jmp 0x1014898a
xor eax, eax
test eax, eax
jne 0x101489a6
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.1014f630
add esp, 0xc
jmp 0x10147b30
mov eax, 4
lea ecx, [esp + 0xb4]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x101489cc
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x101489b4
test eax, eax
je 0x10148a29
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148a1b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148a29
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148a1b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148a29
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x10148a1b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x10148a29
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x10148a29
test esi, esi
mov eax, 1
jg 0x10148a2b
or eax, 0xffffffff
jmp 0x10148a2b
xor eax, eax
test eax, eax
jne 0x10148a47
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
call fcn.10150520
add esp, 0xc
jmp 0x10147b30
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push ecx
push edx
push ebp
call fcn.10150670
add esp, 0xc
jmp 0x10147b30
cmp byte [ebp + 0x126], 3
jne 0x10148ab3
test al, 2
jne 0x10148ab3
push 0x1019a044
push ebp
call fcn.10146c40
add esp, 8
jmp 0x10148ab3
mov eax, dword [ebp + 0x68]
test al, 1
jne 0x10148a8a
push 0x1019a060
jmp 0x10148a9c
cmp byte [ebp + 0x126], 3
jne 0x10148aa5
test al, 2
jne 0x10148aa5
push 0x1019a044
push ebp
call fcn.10146c40
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.1011717a
add esp, 0xb0
ret