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

Disassembly:
push 0xffffffffffffffff
push 0x10167cc0
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
mov eax, dword [0x101e0cf8]
xor eax, esp
mov dword [esp + 0x58], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x101e0cf8]
xor eax, esp
push eax
lea eax, [esp + 0x70]
mov dword fs:[0], eax
mov eax, dword [esp + 0x90]
mov ebx, dword [esp + 0x84]
mov edi, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
push eax
mov dword [esp + 0x34], ebx
mov dword [esp + 0x24], edi
call fcn.10041980
mov ebp, eax
add esp, 4
lea eax, [esp + 0x50]
push eax
mov ecx, ebp
call fcn.1003f790
cmp byte [esi + 8], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x18], ebx
mov byte [esp + 0x1f], 0
jne 0x10043d6b
mov ecx, esi
call fcn.1003f8e0
cmp byte [edi + 8], 0
jne 0x10043d78
mov ecx, edi
call fcn.1003f8e0
mov eax, dword [esi + 4]
test eax, eax
jne 0x10043d88
cmp dword [edi + 4], eax
je 0x10043dca
test eax, eax
je 0x10043d8e
cmp dword [edi + 4], 0
jne 0x10043dca
cmp byte [esi + 8], 0
jne 0x10043d9b
mov ecx, esi
call fcn.1003f8e0
cmp byte [esi + 9], 0x2b
jne 0x10043da6
mov byte [ebx], 0x2b
jmp 0x10043dbc
cmp byte [esi + 8], 0
jne 0x10043db3
mov ecx, esi
call fcn.1003f8e0
cmp byte [esi + 9], 0x2d
jne 0x10043dca
mov byte [ebx], 0x2d
add ebx, 1
mov ecx, esi
mov dword [esp + 0x18], ebx
call fcn.1003f890
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x54]
xor edi, edi
cmp eax, 0x10
mov byte [esp + 0x17], 0
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], edi
mov ecx, edx
jae 0x10043dec
lea ecx, [esp + 0x54]
cmp byte [ecx], 0x7f
je 0x100440c0
cmp eax, 0x10
mov eax, edx
jae 0x10043e00
lea eax, [esp + 0x54]
cmp byte [eax], 0
jle 0x100440c0
mov edx, dword [ebp]
mov eax, dword [edx + 8]
mov ecx, ebp
call eax
mov byte [esp + 0x27], al
mov dword [esp + 0x4c], 0xf
mov byte [esp + 0x38], 0
mov dword [esp + 0x48], 1
mov byte [esp + 0x39], 0
mov ecx, dword [esp + 0x20]
push ecx
push esi
mov byte [esp + 0x80], 1
xor ebx, ebx
call fcn.1003fa00
add esp, 8
test al, al
je 0x10043fd6
cmp byte [esi + 8], 0
jne 0x10043e91
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x10043e86
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10043e75
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x10043e75
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10043e7c
mov eax, dword [ecx]
mov edx, dword [eax + 0x10]
call edx
cmp eax, 0xffffffff
je 0x10043e86
mov byte [esi + 9], al
jmp 0x10043e8d
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x10043f3e
cmp byte [esi + 8], 0
jne 0x10043ea8
mov ecx, esi
call fcn.1003f8e0
cmp byte [esi + 9], 0x39
jg 0x10043f3e
cmp edi, 0x24
mov byte [esp + 0x17], 1
jl 0x10043ec3
add dword [esp + 0x28], 1
jmp 0x10043efe
cmp byte [esi + 8], 0
jne 0x10043ed0
mov ecx, esi
call fcn.1003f8e0
cmp byte [esi + 9], 0x30
jne 0x10043eda
test edi, edi
je 0x10043efe
cmp byte [esi + 8], 0
jne 0x10043ee7
mov ecx, esi
call fcn.1003f8e0
mov ecx, dword [esp + 0x18]
mov al, byte [esi + 9]
mov byte [ecx], al
add ecx, 1
add edi, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2c], edi
cmp ebx, dword [esp + 0x48]
jbe 0x10043f09
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x10043f18
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0x7f
je 0x10043f8b
cmp ebx, dword [esp + 0x48]
jbe 0x10043f29
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x10043f38
lea eax, [esp + 0x38]
add byte [eax + ebx], 1
jmp 0x10043f8b
cmp ebx, dword [esp + 0x48]
jbe 0x10043f49
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x10043f58
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
je 0x10043fa8
cmp byte [esp + 0x27], 0
je 0x10043fa8
cmp byte [esi + 8], 0
jne 0x10043f72
mov ecx, esi
call fcn.1003f8e0
mov al, byte [esp + 0x27]
cmp byte [esi + 9], al
jne 0x10043fa8
push 0
push 1
lea ecx, [esp + 0x3c]
call fcn.10031c40
add ebx, 1
mov ecx, esi
call fcn.1003f890
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.1003fa00
add esp, 8
test al, al
jne 0x10043e51
test ebx, ebx
je 0x10043fd6
cmp ebx, dword [esp + 0x48]
jbe 0x10043fb7
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x10043fc6
lea eax, [esp + 0x38]
cmp byte [eax + ebx], 0
jle 0x10043fd1
add ebx, 1
jmp 0x10043fd6
mov byte [esp + 0x1f], 1
cmp dword [esp + 0x68], 0x10
mov edi, dword [esp + 0x54]
jae 0x10043fe5
lea edi, [esp + 0x54]
cmp byte [esp + 0x1f], 0
jne 0x10044054
lea esp, [esp]
test ebx, ebx
jbe 0x10044054
cmp byte [edi], 0x7f
je 0x10044054
sub ebx, 1
je 0x1004401f
cmp ebx, dword [esp + 0x48]
jbe 0x10044009
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x10044018
lea eax, [esp + 0x38]
mov dl, byte [edi]
cmp dl, byte [eax + ebx]
jne 0x1004404f
test ebx, ebx
jne 0x10044044
cmp ebx, dword [esp + 0x48]
jbe 0x1004402e
call fcn.100bcb20
cmp dword [esp + 0x4c], 0x10
mov eax, dword [esp + 0x38]
jae 0x1004403d
lea eax, [esp + 0x38]
mov cl, byte [edi]
cmp cl, byte [eax + ebx]
jl 0x1004404f
cmp byte [edi + 1], 0
jle 0x10043ff0
add edi, 1
jmp 0x10043ff0
mov byte [esp + 0x1f], 1
cmp dword [esp + 0x4c], 0x10
mov byte [esp + 0x78], 0
jb 0x1004406d
mov edx, dword [esp + 0x38]
push edx
call fcn.100bbe20
add esp, 4
cmp byte [esp + 0x17], 0
je 0x10044089
cmp dword [esp + 0x2c], 0
jne 0x10044089
mov eax, dword [esp + 0x18]
mov byte [eax], 0x30
add eax, 1
mov dword [esp + 0x18], eax
cmp byte [esi + 8], 0
jne 0x1004426f
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x10044264
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10044253
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x10044253
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1004425a
cmp byte [esi + 8], 0
mov ebx, dword [esp + 0x20]
jne 0x100440fe
mov ecx, dword [esi + 4]
cmp ecx, edi
je 0x100440f7
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x100440e6
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x100440e6
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100440ed
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100440f7
mov byte [esi + 9], al
jmp 0x100440fa
mov dword [esi + 4], edi
mov byte [esi + 8], 1
cmp byte [ebx + 8], 0
jne 0x10044138
mov ecx, dword [ebx + 4]
cmp ecx, edi
je 0x10044131
mov eax, dword [ecx + 0x20]
cmp dword [eax], edi
je 0x10044120
mov edx, dword [ecx + 0x30]
cmp dword [edx], edi
jle 0x10044120
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044127
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044131
mov byte [ebx + 9], al
jmp 0x10044134
mov dword [ebx + 4], edi
mov byte [ebx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x1004414a
cmp dword [ebx + 4], edi
je 0x1004406d
jmp 0x10044153
cmp dword [ebx + 4], edi
jne 0x1004406d
cmp byte [esi + 8], 0
jne 0x10044190
test ecx, ecx
je 0x10044185
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10044174
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x10044174
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1004417b
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044185
mov byte [esi + 9], al
jmp 0x1004418c
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x1004406d
cmp byte [esi + 8], 0
jne 0x100441da
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x100441cf
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x100441be
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x100441be
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100441c5
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100441cf
mov byte [esi + 9], al
jmp 0x100441d6
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x1004406d
mov edi, dword [esp + 0x2c]
cmp edi, 0x24
jl 0x10044205
add dword [esp + 0x28], 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.1003f890
xor edi, edi
jmp 0x100440c0
cmp byte [esi + 8], 0
jne 0x10044212
mov ecx, esi
call fcn.1003f8e0
cmp byte [esi + 9], 0x30
jne 0x1004421c
test edi, edi
je 0x10044240
cmp byte [esi + 8], 0
jne 0x10044229
mov ecx, esi
call fcn.1003f8e0
mov eax, dword [esp + 0x18]
mov cl, byte [esi + 9]
mov byte [eax], cl
add eax, 1
add edi, 1
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], edi
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.1003f890
xor edi, edi
jmp 0x100440c0
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044264
mov byte [esi + 9], al
jmp 0x1004426b
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov edx, dword [esp + 0x20]
cmp byte [edx + 8], 0
jne 0x100442b7
mov ecx, dword [edx + 4]
test ecx, ecx
je 0x100442ac
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10044297
mov edi, dword [ecx + 0x30]
cmp dword [edi], 0
jle 0x10044297
mov ecx, dword [eax]
movzx eax, byte [ecx]
jmp 0x100442a2
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
mov edx, dword [esp + 0x20]
cmp eax, 0xffffffff
je 0x100442ac
mov byte [edx + 9], al
jmp 0x100442b3
mov dword [edx + 4], 0
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x100442cf
cmp dword [edx + 4], ecx
je 0x10044385
test ecx, ecx
mov edx, dword [esp + 0x20]
je 0x100442d9
cmp dword [edx + 4], 0
jne 0x10044385
cmp byte [esi + 8], 0
jne 0x10044316
test ecx, ecx
je 0x1004430b
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x100442fa
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x100442fa
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044301
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004430b
mov byte [esi + 9], al
jmp 0x10044312
mov dword [esi + 4], 0
mov byte [esi + 8], 1
mov edx, dword [ebp]
mov eax, dword [edx + 4]
mov bl, byte [esi + 9]
mov ecx, ebp
call eax
cmp bl, al
jne 0x10044385
call fcn.100bf391
mov ecx, dword [eax]
mov eax, dword [esp + 0x18]
mov dl, byte [ecx]
mov byte [eax], dl
mov ecx, dword [esi + 4]
add eax, 1
test ecx, ecx
mov dword [esp + 0x18], eax
je 0x1004437a
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10044368
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x10044368
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 0x1004436f
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x1004437a
mov byte [esi + 8], 0
jmp 0x10044385
mov dword [esi + 4], 0
mov byte [esi + 8], 1
xor ebx, ebx
cmp dword [esp + 0x2c], ebx
jne 0x100444d5
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
lea esp, [esp]
cmp byte [esi + 8], 0
jne 0x100443da
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x100443d3
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x100443c2
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x100443c2
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100443c9
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100443d3
mov byte [esi + 9], al
jmp 0x100443d6
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [ebp + 8], 0
jne 0x10044414
mov ecx, dword [ebp + 4]
cmp ecx, ebx
je 0x1004440d
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x100443fc
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x100443fc
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044403
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004440d
mov byte [ebp + 9], al
jmp 0x10044410
mov dword [ebp + 4], ebx
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x10044443
cmp dword [ebp + 4], ebx
jne 0x10044448
cmp edi, ebx
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x28], edi
jge 0x100444d9
mov byte [ebp], 0x30
add ebp, 1
add edi, 1
mov dword [esp + 0x28], edi
jmp 0x100444d9
cmp dword [ebp + 4], ebx
jne 0x10044420
cmp byte [esi + 8], 0
jne 0x1004447f
cmp ecx, ebx
je 0x10044478
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044467
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044467
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1004446e
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044478
mov byte [esi + 9], al
jmp 0x1004447b
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x10044420
mov ecx, dword [esi + 4]
sub edi, 1
cmp ecx, ebx
mov byte [esp + 0x17], 1
je 0x100444c9
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x100444b4
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x100444b4
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 0x100444bb
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x100444c9
mov byte [esi + 8], 0
jmp 0x100443a0
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x100443a0
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x20]
lea ecx, [ecx]
cmp byte [esi + 8], 0
jne 0x1004451a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044513
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044502
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044502
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044509
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044513
mov byte [esi + 9], al
jmp 0x10044516
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [edi + 8], 0
jne 0x10044554
mov ecx, dword [edi + 4]
cmp ecx, ebx
je 0x1004454d
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x1004453c
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x1004453c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044543
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004454d
mov byte [edi + 9], al
jmp 0x10044550
mov dword [edi + 4], ebx
mov byte [edi + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x100445a6
cmp dword [edi + 4], ebx
jne 0x100445ab
cmp byte [esp + 0x17], 0
mov dword [esp + 0x18], ebp
je 0x10044be4
cmp byte [esi + 8], 0
jne 0x100446e8
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x100446dd
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x100446cc
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x100446cc
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100446d3
cmp dword [edi + 4], ebx
jne 0x10044560
cmp byte [esi + 8], 0
jne 0x100445e2
cmp ecx, ebx
je 0x100445db
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x100445ca
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x100445ca
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100445d1
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100445db
mov byte [esi + 9], al
jmp 0x100445de
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x10044560
cmp byte [esi + 8], 0
jne 0x10044626
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x1004461f
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x1004460e
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x1004460e
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044615
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004461f
mov byte [esi + 9], al
jmp 0x10044622
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x10044560
cmp dword [esp + 0x2c], 0x24
jge 0x1004467f
cmp byte [esi + 8], 0
jne 0x10044671
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x1004466a
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044659
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044659
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044660
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004466a
mov byte [esi + 9], al
jmp 0x1004466d
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov cl, byte [esi + 9]
mov byte [ebp], cl
add ebp, 1
add dword [esp + 0x2c], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
mov byte [esp + 0x17], 1
je 0x100446c0
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x100446ab
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x100446ab
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 0x100446b2
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x100446c0
mov byte [esi + 8], 0
jmp 0x100444e0
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x100444e0
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100446dd
mov byte [esi + 9], al
jmp 0x100446e4
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [edi + 8], 0
jne 0x10044728
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x1004471d
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x1004470c
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x1004470c
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044713
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x1004471d
mov byte [edi + 9], al
jmp 0x10044724
mov dword [edi + 4], 0
mov byte [edi + 8], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x1004473c
cmp dword [edi + 4], ecx
je 0x10044be4
test ecx, ecx
je 0x10044746
cmp dword [edi + 4], 0
jne 0x10044be4
cmp byte [esi + 8], 0
jne 0x10044783
test ecx, ecx
je 0x10044778
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x10044767
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x10044767
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x1004476e
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044778
mov byte [esi + 9], al
jmp 0x1004477f
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x65
je 0x100447d3
cmp byte [esi + 8], 0
jne 0x100447c9
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x100447be
mov eax, dword [ecx + 0x20]
cmp dword [eax], 0
je 0x100447ad
mov edx, dword [ecx + 0x30]
cmp dword [edx], 0
jle 0x100447ad
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100447b4
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100447be
mov byte [esi + 9], al
jmp 0x100447c5
mov dword [esi + 4], 0
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x45
jne 0x10044be4
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 0x1004481c
mov edx, dword [ecx + 0x20]
cmp dword [edx], 0
je 0x1004480a
mov eax, dword [ecx + 0x30]
cmp dword [eax], 0
jle 0x1004480a
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 0x10044811
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x1004481c
mov byte [esi + 8], 0
jmp 0x10044827
mov dword [esi + 4], 0
mov byte [esi + 8], 1
xor ebx, ebx
xor edi, edi
cmp byte [esi + 8], 0
mov byte [esp + 0x17], 0
jne 0x1004486a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044863
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044852
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044852
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044859
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044863
mov byte [esi + 9], al
jmp 0x10044866
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov ebp, dword [esp + 0x20]
cmp byte [ebp + 8], 0
jne 0x100448a8
mov ecx, dword [ebp + 4]
cmp ecx, ebx
je 0x100448a1
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044890
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044890
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044897
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100448a1
mov byte [ebp + 9], al
jmp 0x100448a4
mov dword [ebp + 4], ebx
mov byte [ebp + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x100448bc
cmp dword [ebp + 4], ebx
je 0x100449db
cmp ecx, ebx
je 0x100448c5
cmp dword [ebp + 4], ebx
jne 0x100449db
cmp byte [esi + 8], 0
jne 0x100448fc
cmp ecx, ebx
je 0x100448f5
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x100448e4
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x100448e4
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x100448eb
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x100448f5
mov byte [esi + 9], al
jmp 0x100448f8
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2b
jne 0x1004494f
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 0x10044943
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x100449c5
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x100449c5
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 0x100449cc
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
jmp 0x100449e0
cmp byte [esi + 8], 0
jne 0x10044989
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044982
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044971
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044971
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044978
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044982
mov byte [esi + 9], al
jmp 0x10044985
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x2d
jne 0x100449db
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 0x10044943
mov edx, dword [ecx + 0x20]
cmp dword [edx], ebx
je 0x100449c5
mov eax, dword [ecx + 0x30]
cmp dword [eax], ebx
jle 0x100449c5
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 0x100449cc
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
cmp eax, 0xffffffff
je 0x10044943
mov byte [esi + 8], 0
jmp 0x100449e0
mov ebp, dword [esp + 0x18]
nop
cmp byte [esi + 8], 0
jne 0x10044a1a
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044a13
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044a02
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044a02
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044a09
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044a13
mov byte [esi + 9], al
jmp 0x10044a16
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov edx, dword [esp + 0x20]
cmp byte [edx + 8], 0
jne 0x10044a5c
mov ecx, dword [edx + 4]
cmp ecx, ebx
je 0x10044a55
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044a40
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044a40
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044a47
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
mov edx, dword [esp + 0x20]
je 0x10044a55
mov byte [edx + 9], al
jmp 0x10044a58
mov dword [edx + 4], ebx
mov byte [edx + 8], 1
mov ecx, dword [esi + 4]
cmp ecx, ebx
jne 0x10044aba
cmp dword [edx + 4], ebx
jne 0x10044abf
cmp byte [esp + 0x17], 0
je 0x10044a7a
mov byte [ebp], 0x30
add ebp, 1
mov dword [esp + 0x18], ebp
mov ecx, dword [esp + 0x20]
push ecx
push esi
call fcn.1003fa00
add esp, 8
test al, al
je 0x10044be4
cmp byte [esi + 8], 0
jne 0x10044b29
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044b22
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044b11
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044b11
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044b18
cmp dword [edx + 4], ebx
jne 0x10044a68
cmp byte [esi + 8], 0
jne 0x10044af6
cmp ecx, ebx
je 0x10044aef
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044ade
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044ade
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044ae5
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044aef
mov byte [esi + 9], al
jmp 0x10044af2
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jne 0x10044a68
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.1003f890
jmp 0x100449e0
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044b22
mov byte [esi + 9], al
jmp 0x10044b25
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x30
jl 0x10044be0
cmp byte [esi + 8], 0
jne 0x10044b6d
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044b66
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044b55
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044b55
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044b5c
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044b66
mov byte [esi + 9], al
jmp 0x10044b69
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
cmp byte [esi + 9], 0x39
jg 0x10044be0
cmp edi, 8
jge 0x10044bbe
cmp byte [esi + 8], 0
jne 0x10044bb2
mov ecx, dword [esi + 4]
cmp ecx, ebx
je 0x10044bab
mov eax, dword [ecx + 0x20]
cmp dword [eax], ebx
je 0x10044b9a
mov edx, dword [ecx + 0x30]
cmp dword [edx], ebx
jle 0x10044b9a
mov eax, dword [eax]
movzx eax, byte [eax]
jmp 0x10044ba1
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
call eax
cmp eax, 0xffffffff
je 0x10044bab
mov byte [esi + 9], al
jmp 0x10044bae
mov dword [esi + 4], ebx
mov byte [esi + 8], 1
mov cl, byte [esi + 9]
mov byte [ebp], cl
add ebp, 1
add edi, 1
mov ecx, esi
mov byte [esp + 0x17], 1
call fcn.1003f890
mov edx, dword [esp + 0x20]
push edx
push esi
call fcn.1003fa00
add esp, 8
test al, al
jne 0x10044a90
mov dword [esp + 0x18], ebp
cmp byte [esp + 0x1f], 0
jne 0x10044bf2
cmp byte [esp + 0x17], 0
jne 0x10044bf8
mov eax, dword [esp + 0x30]
jmp 0x10044bfc
mov eax, dword [esp + 0x18]
cmp dword [esp + 0x68], 0x10
mov byte [eax], 0
jb 0x10044c13
mov eax, dword [esp + 0x54]
push eax
call fcn.100bbe20
add esp, 4
mov eax, dword [esp + 0x28]
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.100bc9af
add esp, 0x68
ret