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

Disassembly:
sub esp, 0x40
push ebx
mov ebx, dword [esp + 0x50]
push ebp
push esi
mov esi, dword [esp + 0x50]
push edi
mov eax, dword [esi + 0x160]
mov dword [esp + 0x28], eax
cmp ebx, dword [esi + 0x90]
jne 0x101479d3
lea ecx, [esi + 0x120]
lea ebp, [esi + 0x11c]
mov dword [esp + 0x20], ecx
jmp 0x101479e0
mov ebp, dword [esi + 0x128]
lea eax, [ebp + 4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x18], ebp
mov dword [ebp], eax
nop dword [eax + eax]
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0x14]
push ecx
push dword [esp + 0x68]
mov dword [esp + 0x1c], eax
push eax
mov eax, dword [ebx + 4]
push ebx
call eax
mov edi, eax
add esp, 0x10
mov eax, dword [esp + 0x60]
cmp edi, 0xfffffffb
je 0x10147a21
cmp edi, 0xfffffffd
je 0x10147a21
mov ecx, dword [esp + 0x14]
jmp 0x10147a2d
cmp byte [esp + 0x6c], 0
mov ecx, dword [esp + 0x64]
cmovne ecx, eax
push dword [esp + 0x70]
push 0xad5
push ecx
push eax
push edi
push esi
call fcn.10146740
add esp, 0x18
test al, al
je 0x101485af
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
mov dword [edx], eax
lea eax, [edi + 5]
cmp eax, 0x12
ja case.default.0x10147a5c
jmp dword [eax*4 + 0x101485cc]
mov eax, dword [esp + 0x14]
sub eax, dword [ebx + 0x40]
push eax
mov eax, dword [esp + 0x64]
add eax, dword [ebx + 0x40]
push eax
mov eax, dword [ebx + 0x2c]
push ebx
call eax
add esp, 0xc
mov byte [esp + 0x5c], al
test al, al
je 0x10147adb
push 1
push 0xb17
lea eax, [esp + 0x65]
push eax
lea eax, [esp + 0x68]
push eax
push edi
push esi
call fcn.10146740
mov eax, dword [esi + 0x3c]
add esp, 0x18
test eax, eax
je case.default.0x10147a5c
push 1
lea ecx, [esp + 0x60]
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x10147b78
cmp dword [esi + 0x50], 0
je 0x10147b78
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
jmp 0x10147b78
mov edx, dword [esp + 0x14]
sub edx, dword [ebx + 0x40]
mov eax, dword [esp + 0x60]
add eax, dword [ebx + 0x40]
mov edi, dword [esp + 0x28]
push edx
push eax
add edi, 0x50
push ebx
push edi
call fcn.1014bff0
add esp, 0x10
test eax, eax
je 0x1014835f
mov eax, dword [edi + 0xc]
cmp eax, dword [edi + 8]
jne 0x10147b1d
push edi
call fcn.1014c5d0
add esp, 4
test al, al
je 0x1014835f
mov eax, dword [edi + 0xc]
mov byte [eax], 0
inc dword [edi + 0xc]
mov ebp, dword [edi + 0x10]
test ebp, ebp
je 0x1014835f
push 0
push ebp
push dword [esp + 0x30]
push esi
call fcn.1014b490
mov edi, eax
add esp, 0x10
mov eax, dword [esp + 0x28]
cmp byte [eax + 0x81], 0
mov ecx, dword [eax + 0x60]
mov dword [eax + 0x5c], ecx
je 0x10147bc9
cmp byte [eax + 0x82], 0
jne 0x10147bc9
test edi, edi
jne 0x10147bdb
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10147baf
push edi
push ebp
push dword [esi + 4]
call eax
add esp, 0xc
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x68]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x60], eax
mov dword [ebp], eax
mov eax, dword [esi + 0x1dc]
sub eax, 2
je 0x101485a2
sub eax, 1
jne 0x101479f0
mov eax, dword [esp + 0x14]
mov dword [edi], eax
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
cmp dword [esi + 0x50], 0
je 0x10147b74
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
jmp 0x10147b74
test edi, edi
je 0x10148349
cmp byte [edi + 0x22], 0
je 0x1014833c
cmp byte [edi + 0x20], 0
jne 0x1014832f
cmp dword [edi + 0x1c], 0
jne 0x10148322
cmp dword [edi + 4], 0
je 0x10147c27
cmp byte [esi + 0x130], 0
jne 0x10147c0e
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10147baf
push 0
push dword [edi]
jmp 0x10147b6c
push 0
push edi
push esi
call fcn.1014c790
add esp, 0xc
test eax, eax
jne 0x101485c2
jmp 0x10147b74
cmp dword [esi + 0x70], 0
je 0x10147baf
push esi
mov byte [edi + 0x20], 1
call fcn.1014ac00
add esp, 4
mov byte [edi + 0x20], 0
test eax, eax
je 0x1014835f
push dword [edi + 0x18]
push dword [edi + 0x10]
push dword [edi + 0x14]
push eax
push dword [esi + 0x74]
mov eax, dword [esi + 0x70]
call eax
add esp, 0x14
test eax, eax
je 0x10148315
mov eax, dword [esi + 0x1ac]
mov dword [esi + 0x1a8], eax
jmp 0x10147b74
mov ebp, dword [esi + 0x16c]
test ebp, ebp
je 0x10147c89
mov eax, dword [ebp]
mov dword [esi + 0x16c], eax
jmp 0x10147cb8
mov eax, dword [esi + 0xc]
push 0x30
call eax
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x1014835f
mov ecx, dword [esi + 0xc]
push 0x20
call ecx
add esp, 4
mov dword [ebp + 0x24], eax
test eax, eax
je 0x10148356
add eax, 0x20
mov dword [ebp + 0x28], eax
mov dword [ebp + 0x2c], 0
mov eax, dword [esi + 0x168]
mov dword [ebp], eax
mov dword [esi + 0x168], ebp
mov dword [ebp + 0x10], 0
mov dword [ebp + 0x14], 0
mov eax, dword [esp + 0x60]
add eax, dword [ebx + 0x40]
push eax
mov dword [ebp + 4], eax
mov eax, dword [ebx + 0x1c]
push ebx
call eax
mov dword [ebp + 8], eax
inc dword [esi + 0x134]
mov eax, dword [ebp + 4]
mov ecx, dword [ebp + 8]
add ecx, eax
mov dword [esp + 0x2c], eax
mov eax, dword [ebp + 0x24]
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x28]
dec eax
mov dword [esp + 0x34], ecx
push eax
lea eax, [esp + 0x28]
push eax
push ecx
lea eax, [esp + 0x38]
push eax
mov eax, dword [ebx + 0x38]
push ebx
call eax
mov edx, dword [esp + 0x38]
mov edi, eax
mov ecx, dword [ebp + 0x24]
add esp, 0x1c
mov eax, dword [esp + 0x2c]
sub edx, ecx
mov dword [esp + 0x30], edx
cmp dword [esp + 0x24], eax
jae 0x10147dab
mov eax, ecx
cmp edi, 1
je 0x10147dab
mov edi, dword [ebp + 0x28]
sub edi, eax
add edi, edi
push edi
push eax
mov eax, dword [esi + 0x10]
call eax
add esp, 8
test eax, eax
je 0x1014835f
mov dword [ebp + 0x24], eax
lea ecx, [eax + edi]
add eax, dword [esp + 0x30]
mov dword [ebp + 0x28], ecx
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x28]
dec eax
push eax
lea eax, [esp + 0x20]
push eax
push dword [esp + 0x34]
lea eax, [esp + 0x30]
push eax
mov eax, dword [ebx + 0x38]
push ebx
call eax
mov ecx, dword [ebp + 0x24]
add esp, 0x14
mov edx, dword [esp + 0x1c]
mov edi, eax
mov esi, dword [esp + 0x2c]
sub edx, ecx
cmp dword [esp + 0x24], esi
mov eax, ecx
mov esi, dword [esp + 0x54]
mov dword [esp + 0x30], edx
jb 0x10147d41
push dword [esp + 0x70]
mov dword [ebp + 0x18], edx
lea edi, [ebp + 0xc]
mov dword [edi], ecx
mov eax, dword [esp + 0x20]
mov byte [eax], 0
lea eax, [ebp + 0x2c]
push eax
push edi
push dword [esp + 0x6c]
push ebx
push esi
call fcn.1014d730
add esp, 0x18
test eax, eax
jne 0x101485c2
mov eax, dword [esi + 0x34]
test eax, eax
je 0x10147e04
push dword [esi + 0x184]
push dword [edi]
push dword [esi + 4]
call eax
add esp, 0xc
lea eax, [esi + 0x19c]
push eax
call fcn.1014c3c0
add esp, 4
jmp 0x10147b74
cmp dword [esi + 0x50], 0
je 0x10147e1c
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
lea eax, [esi + 0x19c]
push eax
call fcn.1014c3c0
add esp, 4
jmp 0x10147b74
mov edi, dword [ebx + 0x40]
add edi, dword [esp + 0x60]
mov eax, dword [ebx + 0x1c]
push edi
push ebx
mov dword [esp + 0x34], 0
mov byte [esp + 0x1b], 1
call eax
add eax, edi
lea ebp, [esi + 0x19c]
push eax
push edi
push ebx
push ebp
call fcn.1014bff0
add esp, 0x18
test eax, eax
je 0x1014835f
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp + 8]
jne 0x10147e80
push ebp
call fcn.1014c5d0
add esp, 4
test al, al
je 0x1014835f
mov eax, dword [ebp + 0xc]
mov byte [eax], 0
mov eax, dword [ebp + 0x10]
inc dword [ebp + 0xc]
mov dword [esp + 0x38], eax
test eax, eax
je 0x1014835f
mov eax, dword [esi + 0x1a8]
push 2
mov dword [esi + 0x1ac], eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x40]
push eax
push dword [esp + 0x6c]
push ebx
push esi
call fcn.1014d730
mov ebp, eax
add esp, 0x18
test ebp, ebp
jne 0x1014838a
mov eax, dword [esi + 0x1a8]
mov edi, dword [esp + 0x38]
mov dword [esi + 0x1ac], eax
mov eax, dword [esi + 0x34]
test eax, eax
je 0x10147ef2
push dword [esi + 0x184]
push edi
push dword [esi + 4]
call eax
add esp, 0xc
xor al, al
jmp 0x10147ef6
mov al, byte [esp + 0x13]
cmp dword [esi + 0x38], 0
je 0x10147f1c
cmp dword [esi + 0x34], 0
je 0x10147f0e
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov eax, dword [eax]
mov dword [ecx], eax
mov eax, dword [esi + 0x38]
push edi
push dword [esi + 4]
call eax
add esp, 8
jmp 0x10147f38
test al, al
je 0x10147f38
cmp dword [esi + 0x50], 0
je 0x10147f38
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
lea eax, [esi + 0x19c]
push eax
call fcn.1014c3c0
mov edi, dword [esp + 0x30]
add esp, 4
test edi, edi
je 0x10147f85
nop
mov ecx, dword [esi + 0x68]
mov ebp, edi
test ecx, ecx
je 0x10147f65
mov eax, dword [edi]
push dword [eax]
push dword [esi + 4]
call ecx
add esp, 8
mov eax, dword [esi + 0x174]
lea ecx, [edi + 4]
mov edi, dword [ecx]
mov dword [ecx], eax
mov dword [esi + 0x174], ebp
mov ecx, dword [ebp]
mov eax, dword [ebp + 8]
mov dword [ecx + 4], eax
test edi, edi
jne 0x10147f50
cmp dword [esi + 0x134], 0
jne 0x10147b74
mov eax, dword [esi + 0x1dc]
cmp eax, 2
je 0x10147b74
cmp eax, 3
jne 0x1014836c
mov dword [esi + 0x114], fcn.1014a7b0
jmp 0x10147b74
mov eax, dword [esp + 0x58]
cmp dword [esi + 0x134], eax
je 0x1014847a
mov ecx, dword [ebx + 0x40]
mov eax, dword [esp + 0x60]
mov ebp, dword [esi + 0x168]
lea eax, [eax + ecx*2]
push eax
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 0x1c]
push ebx
call eax
mov edi, eax
add esp, 8
cmp edi, dword [ebp + 8]
jne 0x101483d0
mov ecx, dword [ebp + 4]
mov edx, dword [esp + 0x30]
sub edi, 4
jb 0x10148011
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x10148016
add ecx, 4
add edx, 4
sub edi, 4
jae 0x10148000
cmp edi, 0xfffffffc
je 0x10148053
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x101483d0
cmp edi, 0xfffffffd
je 0x10148053
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x101483d0
cmp edi, 0xfffffffe
je 0x10148053
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x101483d0
cmp edi, 0xffffffff
je 0x10148053
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x101483d0
mov eax, dword [ebp]
lea ecx, [esi + 0x38]
mov dword [esi + 0x168], eax
mov eax, dword [esi + 0x16c]
mov dword [ebp], eax
dec dword [esi + 0x134]
cmp dword [ecx], 0
mov dword [esi + 0x16c], ebp
je 0x101480e1
cmp byte [esi + 0xe8], 0
mov eax, dword [ebp + 0x10]
je 0x101480d2
test eax, eax
je 0x101480d2
mov ecx, dword [ebp + 0x1c]
mov dl, byte [eax]
add ecx, dword [ebp + 0xc]
test dl, dl
je 0x101480a1
mov byte [ecx], dl
lea eax, [eax + 1]
mov dl, byte [eax]
inc ecx
test dl, dl
jne 0x10148095
cmp byte [esi + 0xe9], 0
mov edx, dword [ebp + 0x14]
je 0x101480cc
test edx, edx
je 0x101480cc
mov al, byte [esi + 0x1d4]
mov byte [ecx], al
inc ecx
mov al, byte [edx]
test al, al
je 0x101480cc
mov byte [ecx], al
lea edx, [edx + 1]
mov al, byte [edx]
inc ecx
test al, al
jne 0x101480c0
mov byte [ecx], 0
lea ecx, [esi + 0x38]
push dword [ebp + 0xc]
mov eax, dword [ecx]
push dword [esi + 4]
call eax
add esp, 8
jmp 0x101480f9
cmp dword [esi + 0x50], 0
je 0x101480f9
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
mov edi, dword [ebp + 0x2c]
test edi, edi
je 0x10147f85
mov ecx, dword [esi + 0x68]
test ecx, ecx
je 0x10148117
mov eax, dword [edi]
push dword [eax]
push dword [esi + 4]
call ecx
add esp, 8
mov eax, dword [ebp + 0x2c]
mov eax, dword [eax + 4]
mov dword [ebp + 0x2c], eax
mov eax, dword [esi + 0x174]
mov dword [edi + 4], eax
mov dword [esi + 0x174], edi
mov ecx, dword [edi]
mov eax, dword [edi + 8]
mov dword [ecx + 4], eax
mov edi, dword [ebp + 0x2c]
test edi, edi
jne 0x10148104
jmp 0x10147f85
push dword [esp + 0x60]
mov eax, dword [ebx + 0x28]
push ebx
call eax
add esp, 8
test eax, eax
js 0x101483e7
cmp dword [esi + 0x3c], 0
je case.default.0x10147a5c
lea ecx, [esp + 0x34]
push ecx
push eax
call fcn.10154870
push eax
lea eax, [esp + 0x40]
push eax
push dword [esi + 4]
mov eax, dword [esi + 0x3c]
call eax
add esp, 0x14
jmp 0x10147b78
mov eax, dword [esi + 0x3c]
test eax, eax
je case.default.0x10147a5c
push 1
lea ecx, [esp + 0x17]
mov byte [esp + 0x17], 0xa
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x10147b78
mov eax, dword [esi + 0x48]
test eax, eax
je 0x101481b8
push dword [esi + 4]
call eax
add esp, 4
jmp 0x101481d0
cmp dword [esi + 0x50], 0
je 0x101481d0
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
push dword [esp + 0x70]
mov edi, dword [esp + 0x6c]
lea eax, [esp + 0x18]
push dword [esp + 0x70]
push edi
push dword [esp + 0x70]
push eax
push ebx
push esi
call fcn.10147660
add esp, 0x1c
test eax, eax
jne 0x101485c2
cmp dword [esp + 0x14], eax
jne 0x10147b7c
pop edi
mov dword [esi + 0x114], 0x10147450
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
mov ebp, dword [esi + 0x3c]
test ebp, ebp
je 0x10147baf
cmp byte [ebx + 0x44], 0
jne 0x101482c9
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x1c]
lea eax, [esp + 0x6c]
push eax
mov eax, dword [ebx + 0x38]
push ebx
call eax
mov ecx, dword [esp + 0x74]
mov edi, eax
mov eax, dword [esp + 0x34]
mov dword [eax], ecx
mov edx, dword [esi + 0x2c]
mov ecx, dword [esp + 0x38]
sub ecx, edx
push ecx
push edx
push dword [esi + 4]
call ebp
add esp, 0x20
test edi, edi
je 0x10147b74
nop
cmp edi, 1
je 0x10147b74
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x60]
mov dword [ecx], eax
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x1c]
lea eax, [esp + 0x6c]
push eax
mov eax, dword [ebx + 0x38]
push ebx
call eax
mov ecx, dword [esp + 0x34]
mov edi, eax
mov eax, dword [esp + 0x74]
mov dword [ecx], eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [esp + 0x38]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call ebp
add esp, 0x20
test edi, edi
jne 0x10148270
jmp 0x10147b74
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x60]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call ebp
jmp 0x10147b71
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014ce00
add esp, 0x10
test eax, eax
je 0x1014835f
jmp 0x10147b78
push dword [esp + 0x14]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cc90
add esp, 0x10
test eax, eax
je 0x1014835f
jmp 0x10147b78
pop edi
pop esi
pop ebp
mov eax, 0x15
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0xf
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0xc
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0x18
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0xb
pop ebx
add esp, 0x40
ret
mov eax, dword [esi + 0x14]
push ebp
call eax
add esp, 4
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x40
ret
mov edx, dword [esp + 0x68]
push edx
push dword [esp + 0x68]
push dword [esp + 0x1c]
push esi
call fcn.1014a7b0
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x101483c6
mov ecx, dword [esi + 0x68]
mov ebx, edi
test ecx, ecx
je 0x101483a7
mov eax, dword [edi]
push dword [eax]
push dword [esi + 4]
call ecx
add esp, 8
mov eax, dword [esi + 0x174]
lea ecx, [edi + 4]
mov edi, dword [ecx]
mov dword [ecx], eax
mov dword [esi + 0x174], ebx
mov ecx, dword [ebx]
mov eax, dword [ebx + 8]
mov dword [ecx + 4], eax
test edi, edi
jne 0x10148392
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x40
ret
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
pop edi
pop esi
pop ebp
mov dword [ecx], eax
mov eax, 7
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0xe
pop ebx
add esp, 0x40
ret
cmp byte [esp + 0x6c], 0
jne 0x101484b6
mov ecx, dword [esp + 0x64]
mov dword [edx], ecx
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x10148422
push 1
lea ecx, [esp + 0x58]
mov byte [esp + 0x58], 0xa
push ecx
push dword [esi + 4]
call eax
add esp, 0xc
jmp 0x10148437
cmp dword [esi + 0x50], 0
je 0x1014843b
push ecx
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
test eax, eax
je 0x1014856d
cmp dword [esi + 0x134], eax
jne 0x1014847a
mov edx, dword [esp + 0x68]
xor eax, eax
pop edi
pop esi
pop ebp
mov dword [edx], ecx
pop ebx
add esp, 0x40
ret
cmp byte [esp + 0x6c], 0
jne 0x101484b6
mov eax, dword [esp + 0x58]
test eax, eax
jle 0x1014856d
cmp dword [esi + 0x134], eax
je 0x101484b6
pop edi
pop esi
pop ebp
mov eax, 0xd
pop ebx
add esp, 0x40
ret
mov eax, dword [esp + 0x14]
pop edi
pop esi
mov dword [ebp], eax
mov eax, 4
pop ebp
pop ebx
add esp, 0x40
ret
cmp byte [esp + 0x6c], 0
jne 0x101484b6
pop edi
pop esi
pop ebp
mov eax, 5
pop ebx
add esp, 0x40
ret
cmp byte [esp + 0x6c], 0
je 0x101484ca
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x60]
pop edi
pop esi
pop ebp
mov dword [edx], eax
xor eax, eax
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 6
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0x11
pop ebx
add esp, 0x40
ret
cmp byte [esp + 0x6c], 0
jne 0x101484b6
mov edx, dword [esi + 0x3c]
test edx, edx
je 0x10148546
cmp byte [ebx + 0x44], 0
jne 0x1014852e
push dword [esi + 0x30]
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x58]
push eax
push dword [esp + 0x6c]
lea eax, [esp + 0x6c]
push eax
mov eax, dword [ebx + 0x38]
push ebx
call eax
mov ecx, dword [esi + 0x2c]
mov eax, dword [esp + 0x68]
sub eax, ecx
push eax
mov eax, dword [esi + 0x3c]
push ecx
push dword [esi + 4]
call eax
add esp, 0x20
jmp 0x1014855e
mov ebx, dword [esp + 0x64]
mov eax, ebx
mov ecx, dword [esp + 0x60]
sub eax, ecx
push eax
push ecx
push dword [esi + 4]
call edx
add esp, 0xc
jmp 0x10148562
cmp dword [esi + 0x50], 0
je 0x1014855e
push dword [esp + 0x64]
push dword [esp + 0x64]
push ebx
push esi
call fcn.1014cd40
add esp, 0x10
mov ebx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
test eax, eax
jne 0x1014857a
mov dword [ebp], ebx
pop edi
pop esi
pop ebp
mov eax, 3
pop ebx
add esp, 0x40
ret
cmp dword [esi + 0x134], eax
je 0x10148592
pop edi
pop esi
mov dword [ebp], ebx
mov eax, 0xd
pop ebp
pop ebx
add esp, 0x40
ret
mov edx, dword [esp + 0x68]
xor eax, eax
pop edi
pop esi
pop ebp
mov dword [edx], ebx
pop ebx
add esp, 0x40
ret
pop edi
pop esi
pop ebp
mov eax, 0x23
pop ebx
add esp, 0x40
ret
push str._ABORTING_n
push esi
call fcn.10146a70
add esp, 8
mov eax, 0x2b
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret