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

Disassembly:
push 0xffffffffffffffff
push 0x1303eed0
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x1304c080]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1304c080]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov esi, dword [esp + 0x88]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x90]
push eax
mov dword [esp + 0x34], ebx
call fcn.130111c0
add esp, 4
lea ecx, [esp + 0x50]
mov ebp, eax
push ecx
mov ecx, ebp
call fcn.13010340
xor edi, edi
mov dword [esp + 0x78], edi
cmp byte [esi + 8], 0
mov dword [esp + 0x18], ebx
mov byte [esp + 0x1f], 0
jne 0x130126f9
mov ecx, esi
call fcn.13010520
mov ecx, dword [esp + 0x20]
cmp byte [ecx + 8], 0
jne 0x1301270c
call fcn.13010520
mov ecx, dword [esp + 0x20]
mov eax, dword [esi + 4]
cmp eax, edi
jne 0x1301271c
cmp dword [ecx + 4], edi
je 0x1301275d
cmp eax, edi
je 0x13012721
cmp dword [ecx + 4], edi
jne 0x1301275d
cmp byte [esi + 8], 0
jne 0x1301272e
mov ecx, esi
call fcn.13010520
cmp byte [esi + 9], 0x2b
jne 0x13012739
mov byte [ebx], 0x2b
jmp 0x1301274f
cmp byte [esi + 8], 0
jne 0x13012746
mov ecx, esi
call fcn.13010520
cmp byte [esi + 9], 0x2d
jne 0x1301275d
mov byte [ebx], 0x2d
add ebx, 1
mov ecx, esi
mov dword [esp + 0x18], ebx
call fcn.130104d0
mov ecx, dword [esp + 0x68]
cmp ecx, 0x10
mov edx, dword [esp + 0x54]
mov byte [esp + 0x17], 0
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
mov eax, edx
jae 0x1301277d
lea eax, [esp + 0x54]
cmp byte [eax], 0x7f
je 0x13012a68
cmp ecx, 0x10
mov eax, edx
jae 0x13012791
lea eax, [esp + 0x54]
cmp byte [eax], 0
jle 0x13012a68
mov edx, dword [ebp]
mov eax, dword [edx + 8]
mov ecx, ebp
call eax
mov dword [esp + 0x48], edi
mov byte [esp + 0x38], 0
mov byte [esp + 0x2b], al
mov dword [esp + 0x4c], 0xf
mov byte [esp + 0x38], 0
mov dword [esp + 0x48], 1
mov byte [esp + 0x39], 0
mov byte [esp + 0x78], 1
mov ecx, dword [esp + 0x20]
push ecx
push esi
xor ebx, ebx
call fcn.13010570
add esp, 8
test al, al
je 0x13012968
cmp byte [esi + 8], 0
jne 0x13012822
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x1301281b
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x1301280a
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x1301280a
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012811
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x1301281b
mov byte [esi + 9], al
jmp 0x1301281e
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x130128d1
cmp byte [esi + 8], 0
jne 0x13012839
mov ecx, esi
call fcn.13010520
cmp byte [esi + 9], 0x39
jg 0x130128d1
cmp dword [esp + 0x24], 0x24
mov byte [esp + 0x17], 1
jl 0x13012856
add dword [esp + 0x2c], 1
jmp 0x13012891
cmp byte [esi + 8], 0
jne 0x13012863
mov ecx, esi
call fcn.13010520
cmp byte [esi + 9], 0x30
jne 0x1301286f
cmp dword [esp + 0x24], edi
je 0x13012891
cmp byte [esi + 8], 0
jne 0x1301287c
mov ecx, esi
call fcn.13010520
mov ecx, dword [esp + 0x18]
mov al, byte [esi + 9]
mov byte [ecx], al
add ecx, 1
add dword [esp + 0x24], 1
mov dword [esp + 0x18], ecx
cmp ebx, dword [esp + 0x48]
jbe 0x1301289c
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x130128ab
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0x7f
je 0x1301291d
cmp ebx, dword [esp + 0x48]
jbe 0x130128bc
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x130128cb
lea eax, [esp + 0x38]
add byte [eax + ebx], 1
jmp 0x1301291d
cmp ebx, dword [esp + 0x48]
jbe 0x130128dc
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x130128eb
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
je 0x1301293a
cmp byte [esp + 0x2b], 0
je 0x1301293a
cmp byte [esi + 8], 0
jne 0x13012905
mov ecx, esi
call fcn.13010520
mov al, byte [esp + 0x2b]
cmp byte [esi + 9], al
jne 0x1301293a
push edi
push 1
lea ecx, [esp + 0x3c]
call fcn.13006660
add ebx, 1
mov ecx, esi
call fcn.130104d0
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.13010570
add esp, 8
test al, al
jne 0x130127e8
cmp ebx, edi
je 0x13012968
cmp ebx, dword [esp + 0x48]
jbe 0x13012949
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x13012958
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
jle 0x13012963
add ebx, 1
jmp 0x13012968
mov byte [esp + 0x1f], 1
cmp dword [esp + 0x68], 0x10
mov edi, dword [esp + 0x54]
jae 0x13012977
lea edi, [esp + 0x54]
cmp byte [esp + 0x1f], 0
jne 0x130129e4
mov edi, edi
test ebx, ebx
jbe 0x130129e4
cmp byte [edi], 0x7f
je 0x130129e4
sub ebx, 1
je 0x130129af
cmp ebx, dword [esp + 0x48]
jbe 0x13012999
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x130129a8
lea eax, [esp + 0x38]
mov dl, byte [edi]
cmp dl, byte [eax + ebx]
jne 0x130129df
test ebx, ebx
jne 0x130129d4
cmp ebx, dword [esp + 0x48]
jbe 0x130129be
call fcn.13027af1
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x130129cd
lea eax, [esp + 0x38]
mov cl, byte [edi]
cmp cl, byte [eax + ebx]
jl 0x130129df
cmp byte [edi + 1], 0
jle 0x13012980
add edi, 1
jmp 0x13012980
mov byte [esp + 0x1f], 1
mov byte [esp + 0x78], 0
cmp dword [esp + 0x4c], 0x10
jb 0x130129fd
mov edx, dword [esp + 0x38]
push edx
call fcn.130278ec
add esp, 4
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x4c], 0xf
mov dword [esp + 0x48], 0
mov byte [esp + 0x38], 0
xor edi, edi
cmp byte [esp + 0x17], 0
je 0x13012a33
cmp dword [esp + 0x24], edi
jne 0x13012a33
mov eax, dword [esp + 0x18]
mov byte [eax], 0x30
add eax, 1
mov dword [esp + 0x18], eax
cmp byte [esi + 8], 0
jne 0x13012c05
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012bfe
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012bed
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012bed
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012bf4
mov ebx, dword [esp + 0x20]
lea esp, [esp]
cmp byte [esi + 8], 0
jne 0x13012aaa
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012aa3
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012a92
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012a92
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012a99
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012aa3
mov byte [esi + 9], al
jmp 0x13012aa6
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebx + 8], 0
jne 0x13012ae4
mov ecx, dword [ebx + 4]
cmp ecx, edi
je 0x13012add
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012acc
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012acc
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012ad3
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012add
mov byte [ebx + 9], al
jmp 0x13012ae0
mov dword [ebx + 4], edi
mov byte [ebx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x13012af6
cmp dword [ebx + 4], edi
je 0x13012a18
jmp 0x13012aff
cmp dword [ebx + 4], edi
jne 0x13012a18
cmp byte [esi + 8], 0
jne 0x13012b36
cmp ecx, edi
je 0x13012b2f
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012b1e
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012b1e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012b25
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012b2f
mov byte [esi + 9], al
jmp 0x13012b32
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x13012a18
cmp byte [esi + 8], 0
jne 0x13012b7a
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012b73
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012b62
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012b62
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012b69
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012b73
mov byte [esi + 9], al
jmp 0x13012b76
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x13012a18
cmp dword [esp + 0x24], 0x24
jl 0x13012ba1
add dword [esp + 0x2c], 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.130104d0
jmp 0x13012a70
cmp byte [esi + 8], 0
jne 0x13012bae
mov ecx, esi
call fcn.13010520
cmp byte [esi + 9], 0x30
jne 0x13012bba
cmp dword [esp + 0x24], edi
je 0x13012bdc
cmp byte [esi + 8], 0
jne 0x13012bc7
mov ecx, esi
call fcn.13010520
mov eax, dword [esp + 0x18]
mov cl, byte [esi + 9]
mov byte [eax], cl
add eax, 1
add dword [esp + 0x24], 1
mov dword [esp + 0x18], eax
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.130104d0
jmp 0x13012a70
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012bfe
mov byte [esi + 9], al
jmp 0x13012c01
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebx + 8], 0
jne 0x13012c3f
mov ecx, dword [ebx + 4]
cmp ecx, edi
je 0x13012c38
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012c27
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012c27
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012c2e
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012c38
mov byte [ebx + 9], al
jmp 0x13012c3b
mov dword [ebx + 4], edi
mov byte [ebx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x13012c57
cmp dword [ebx + 4], edi
je 0x13012cfe
cmp ecx, edi
mov ebx, dword [esp + 0x20]
je 0x13012c60
cmp dword [ebx + 4], edi
jne 0x13012cfe
cmp byte [esi + 8], 0
jne 0x13012c97
cmp ecx, edi
je 0x13012c90
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012c7f
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012c7f
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012c86
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012c90
mov byte [esi + 9], al
jmp 0x13012c93
mov dword [esi + 4], edi
mov byte [esi + 8], 1
mov eax, dword [ebp]
mov edx, dword [eax + 4]
mov bl, byte [esi + 9]
mov ecx, ebp
call edx
cmp bl, al
jne 0x13012cfe
call fcn.13027c5c
mov eax, dword [eax]
mov cl, byte [eax]
mov eax, dword [esp + 0x18]
mov byte [eax], cl
mov ecx, dword [esi + 4]
add eax, 1
cmp ecx, edi
mov dword [esp + 0x18], eax
je 0x13012cf7
mov edx, dword [ecx + 0x20]
cmp dword [edx], edi
je 0x13012ce5
mov eax, dword [ecx + 0x30]
cmp dword [eax], edi
jle 0x13012ce5
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13012cec
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x13012cf7
mov byte [esi + 8], 0
jmp 0x13012cfe
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp dword [esp + 0x24], edi
jne 0x13012e47
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x20]
cmp byte [esi + 8], 0
jne 0x13012d4a
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012d43
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012d32
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012d32
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012d39
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012d43
mov byte [esi + 9], al
jmp 0x13012d46
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebp + 8], 0
jne 0x13012d84
mov ecx, dword [ebp + 4]
cmp ecx, edi
je 0x13012d7d
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012d6c
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012d6c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012d73
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012d7d
mov byte [ebp + 9], al
jmp 0x13012d80
mov dword [ebp + 4], edi
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x13012db3
cmp dword [ebp + 4], edi
jne 0x13012db8
cmp ebx, edi
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x2c], ebx
jge 0x13012e4b
mov byte [ebp], 0x30
add ebp, 1
add ebx, 1
mov dword [esp + 0x2c], ebx
jmp 0x13012e4b
cmp dword [ebp + 4], edi
jne 0x13012d90
cmp byte [esi + 8], 0
jne 0x13012def
cmp ecx, edi
je 0x13012de8
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012dd7
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012dd7
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012dde
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012de8
mov byte [esi + 9], al
jmp 0x13012deb
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x13012d90
mov ecx, dword [esi + 4]
sub ebx, 1
cmp ecx, edi
mov byte [esp + 0x17], 1
je 0x13012e3b
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012e26
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012e26
mov eax, edx
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13012e2d
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x13012e3b
mov byte [esi + 8], 0
jmp 0x13012d10
mov dword [esi + 4], edi
mov byte [esi + 8], 1
jmp 0x13012d10
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
nop
cmp byte [esi + 8], 0
jne 0x13012e8a
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012e83
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012e72
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012e72
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012e79
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012e83
mov byte [esi + 9], al
jmp 0x13012e86
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebx + 8], 0
jne 0x13012ec4
mov ecx, dword [ebx + 4]
cmp ecx, edi
je 0x13012ebd
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012eac
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012eac
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012eb3
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012ebd
mov byte [ebx + 9], al
jmp 0x13012ec0
mov dword [ebx + 4], edi
mov byte [ebx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x13012f16
cmp dword [ebx + 4], edi
jne 0x13012f1b
cmp byte [esp + 0x17], 0
mov dword [esp + 0x18], ebp
je 0x13013552
cmp byte [esi + 8], 0
jne 0x13013058
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x1301304d
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x1301303c
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x1301303c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13013043
cmp dword [ebx + 4], edi
jne 0x13012ed0
cmp byte [esi + 8], 0
jne 0x13012f52
cmp ecx, edi
je 0x13012f4b
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012f3a
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012f3a
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012f41
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012f4b
mov byte [esi + 9], al
jmp 0x13012f4e
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x13012ed0
cmp byte [esi + 8], 0
jne 0x13012f96
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012f8f
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012f7e
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012f7e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012f85
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13012f8f
mov byte [esi + 9], al
jmp 0x13012f92
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x13012ed0
cmp dword [esp + 0x24], 0x24
jge 0x13012fef
cmp byte [esi + 8], 0
jne 0x13012fe1
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x13012fda
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x13012fc9
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x13012fc9
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13012fd0
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x13012fda
mov byte [esi + 9], al
jmp 0x13012fdd
mov dword [esi + 4], edi
mov byte [esi + 8], 1
mov cl, byte [esi + 9]
mov byte [ebp], cl
add ebp, 1
add dword [esp + 0x24], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
mov byte [esp + 0x17], 1
je 0x13013030
mov edx, dword [ecx + 0x20]
cmp dword [edx], edi
je 0x1301301b
mov eax, dword [ecx + 0x30]
cmp dword [eax], edi
jle 0x1301301b
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13013022
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x13013030
mov byte [esi + 8], 0
jmp 0x13012e50
mov dword [esi + 4], edi
mov byte [esi + 8], 1
jmp 0x13012e50
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x1301304d
mov byte [esi + 9], al
jmp 0x13013054
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov edi, ebx
cmp byte [edi + 8], 0
jne 0x1301309a
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x1301308f
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x1301307e
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x1301307e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13013085
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x1301308f
mov byte [edi + 9], al
jmp 0x13013096
mov dword [edi + 4], 0
mov byte [edi + 8], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x130130b0
cmp dword [edi + 4], ecx
je 0x13013552
test ecx, ecx
mov edi, ebx
je 0x130130ba
cmp dword [edi + 4], 0
jne 0x13013552
cmp byte [esi + 8], 0
jne 0x130130f7
test ecx, ecx
je 0x130130ec
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x130130db
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x130130db
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x130130e2
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x130130ec
mov byte [esi + 9], al
jmp 0x130130f3
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov al, byte [esi + 9]
cmp al, 0x65
je 0x13013148
cmp byte [esi + 8], 0
jne 0x1301313e
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x13013133
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x13013122
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x13013122
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13013129
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013133
mov byte [esi + 9], al
jmp 0x1301313a
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x45
jne 0x13013552
mov eax, dword [esp + 0x18]
mov byte [eax], 0x65
mov ecx, dword [esi + 4]
add eax, 1
test ecx, ecx
mov dword [esp + 0x18], eax
je 0x13013193
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x13013181
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x13013181
mov eax, edx
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13013188
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x13013193
mov byte [esi + 8], 0
jmp 0x1301319e
mov dword [esi + 4], 0
mov byte [esi + 8], 1
xor ebx, ebx
xor edi, edi
cmp byte [esi + 8], bl
mov byte [esp + 0x17], 0
jne 0x130131e0
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x130131d9
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x130131c8
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x130131c8
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x130131cf
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x130131d9
mov byte [esi + 9], al
jmp 0x130131dc
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov ebp, dword [esp + 0x20]
cmp byte [ebp + 8], bl
jne 0x1301321d
mov ecx, dword [ebp + 4]
cmp ecx, ebx
je 0x13013216
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13013205
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13013205
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1301320c
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013216
mov byte [ebp + 9], al
jmp 0x13013219
mov dword [ebp + 4], ebx
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x13013231
cmp dword [ebp + 4], ebx
je 0x13013351
cmp ecx, ebx
je 0x1301323a
cmp dword [ebp + 4], ebx
jne 0x13013351
cmp byte [esi + 8], bl
jne 0x13013270
cmp ecx, ebx
je 0x13013269
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13013258
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13013258
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1301325f
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013269
mov byte [esi + 9], al
jmp 0x1301326c
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2b
jne 0x130132c5
mov ebp, dword [esp + 0x18]
mov byte [ebp], 0x2b
mov ecx, dword [esi + 4]
add ebp, 1
cmp ecx, ebx
mov dword [esp + 0x18], ebp
je 0x130132b9
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x1301333c
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x1301333c
mov eax, edx
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13013343
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x13013355
cmp byte [esi + 8], bl
jne 0x130132fe
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x130132f7
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x130132e6
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x130132e6
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x130132ed
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x130132f7
mov byte [esi + 9], al
jmp 0x130132fa
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2d
jne 0x13013351
mov ebp, dword [esp + 0x18]
mov byte [ebp], 0x2d
mov ecx, dword [esi + 4]
add ebp, 1
cmp ecx, ebx
mov dword [esp + 0x18], ebp
je 0x130132b9
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x1301333c
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x1301333c
mov eax, edx
add dword [eax], 0xffffffff
mov ecx, dword [ecx + 0x20]
mov eax, dword [ecx]
lea edx, [eax + 1]
mov dword [ecx], edx
movzx eax, byte [eax]
jmp 0x13013343
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x130132b9
mov byte [esi + 8], bl
jmp 0x13013355
mov ebp, dword [esp + 0x18]
cmp byte [esi + 8], bl
jne 0x1301338e
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x13013387
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13013376
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13013376
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1301337d
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013387
mov byte [esi + 9], al
jmp 0x1301338a
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov edx, dword [esp + 0x20]
cmp byte [edx + 8], bl
jne 0x130133cf
mov ecx, dword [edx + 4]
cmp ecx, ebx
je 0x130133c8
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x130133b3
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x130133b3
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x130133ba
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
mov edx, dword [esp + 0x20]
je 0x130133c8
mov byte [edx + 9], al
jmp 0x130133cb
mov dword [edx + 4], ebx
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x1301342b
cmp dword [edx + 4], ebx
jne 0x13013430
cmp byte [esp + 0x17], bl
je 0x130133ec
mov byte [ebp], 0x30
add ebp, 1
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x20]
push eax
push esi
call fcn.13010570
add esp, 8
test al, al
je 0x13013552
cmp byte [esi + 8], bl
jne 0x13013499
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x13013492
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13013481
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13013481
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13013488
cmp dword [edx + 4], ebx
jne 0x130133db
cmp byte [esi + 8], bl
jne 0x13013466
cmp ecx, ebx
je 0x1301345f
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x1301344e
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x1301344e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x13013455
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x1301345f
mov byte [esi + 9], al
jmp 0x13013462
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x130133db
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.130104d0
jmp 0x13013355
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013492
mov byte [esi + 9], al
jmp 0x13013495
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x1301354e
cmp byte [esi + 8], bl
jne 0x130134dc
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x130134d5
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x130134c4
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x130134c4
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x130134cb
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x130134d5
mov byte [esi + 9], al
jmp 0x130134d8
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x1301354e
cmp edi, 8
jge 0x1301352c
cmp byte [esi + 8], bl
jne 0x13013520
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x13013519
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x13013508
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x13013508
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1301350f
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x13013519
mov byte [esi + 9], al
jmp 0x1301351c
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov al, byte [esi + 9]
mov byte [ebp], al
add ebp, 1
add edi, 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.130104d0
mov eax, dword [esp + 0x20]
push eax
push esi
call fcn.13010570
add esp, 8
test al, al
jne 0x13013402
mov dword [esp + 0x18], ebp
cmp byte [esp + 0x1f], 0
jne 0x13013560
cmp byte [esp + 0x17], 0
jne 0x13013566
mov eax, dword [esp + 0x30]
jmp 0x1301356a
mov eax, dword [esp + 0x18]
mov byte [eax], 0
mov dword [esp + 0x78], 0xffffffff
cmp dword [esp + 0x68], 0x10
jb 0x13013589
mov ecx, dword [esp + 0x54]
push ecx
call fcn.130278ec
add esp, 4
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x68], 0xf
mov dword [esp + 0x64], 0
mov byte [esp + 0x54], 0
mov ecx, dword [esp + 0x70]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x58]
xor ecx, esp
call fcn.1302732a
add esp, 0x68
ret