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

Disassembly:
sub esp, 0x70
push ebx
push ebp
push esi
mov esi, dword [esp + 0x88]
push edi
xor edi, edi
mov byte [esp + 0x13], 0
mov byte [esp + 0x14], 0
mov dword [esp + 0x18], edi
test esi, esi
je 0x42c86e
cmp dword [esi], 0xc0dedbad
jne 0x42c86e
mov ebp, dword [esp + 0x84]
cmp byte [ebp + 0x118], 0
je 0x42b720
mov edi, 0x2a
push esi
mov dword [esp + 0x1c], edi
call fcn.0042fbe0
push 0
push edi
push esi
call fcn.0042b0b0
add esp, 0x10
cmp dword [esi + 0x34], 0x10
je 0x42b720
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x42b6e2
push eax
call fcn.0042d160
add esp, 4
mov ebx, dword [esi + 0x18]
test ebx, ebx
je 0x42b705
push esi
push ebx
call fcn.0043b0e0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x2b4]
push eax
call fcn.00444350
add esp, 0x14
push esi
mov dword [esi + 0x18], 0
call fcn.00429e20
add esp, 4
nop word [eax + eax]
mov al, byte [ebp + 0x116]
xor ebx, ebx
mov byte [esp + 0x12], 0
mov byte [ebp + 0x116], bl
test al, al
je 0x42b749
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x42b749
push dword [eax]
push ebp
call fcn.0042b040
add esp, 8
mov ecx, dword [esi + 0x34]
lea eax, [ecx - 4]
cmp eax, 0xb
ja 0x42b75d
cmp dword [esi + 0x18], ebx
je case.default.0x42b799
lea eax, [ecx - 3]
cmp eax, 0xc
ja 0x42b78d
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x1a]
push eax
push dword [esp + 0x94]
push esi
call fcn.0042b4e0
mov edi, dword [esp + 0x2c]
add esp, 0x14
test al, al
jne 0x42c680
mov ecx, dword [esi + 0x34]
cmp ecx, 0x11
ja case.default.0x42b799
jmp dword [ecx*4 + 0x42c87c]
push esi
call fcn.00441bb0
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x42b799.1
cmp dword [esi + 0x34], 2
je 0x42b7c4
mov dword [esi + 0x34], 2
push 1
lea eax, [esp + 0x44]
push esi
push eax
call fcn.0044c210
add esp, 0xc
push 2
lea eax, [esp + 0x54]
push esi
push eax
call fcn.0044c210
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [esp + 0x88]
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x1d8]
test eax, eax
je 0x42b809
push 0xa
push 0
push eax
push esi
call fcn.00429c10
add esp, 0x10
mov eax, dword [esi + 0x1dc]
test eax, eax
je 0x42b821
push 2
push 0
push eax
push esi
call fcn.00429c10
add esp, 0x10
cmp dword [esi + 0x34], 3
je case.0x42b799.3
push esi
mov dword [esi + 0x34], 3
call fcn.00441b00
add esp, 4
lea eax, [esp + 0x15]
push eax
lea eax, [esp + 0x1b]
push eax
push esi
call fcn.004371e0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
cmp edi, 0x59
jne 0x42b8b7
cmp dword [esi + 0x34], 1
je 0x42b862
mov dword [esi + 0x34], 1
lea eax, [esi + 0x1c]
push eax
lea eax, [ebp + 0x24]
push esi
push eax
call fcn.00444190
mov ecx, dword [esi + 0x14]
add esp, 0xc
mov eax, dword [esi + 0x10]
test ecx, ecx
je 0x42b882
mov dword [ecx + 0x10], eax
jmp 0x42b885
mov dword [ebp + 4], eax
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
test ecx, ecx
je 0x42b8a3
mov dword [ecx + 0x14], eax
xor edi, edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esp + 0x18], edi
jmp case.0x42b799.1
mov dword [ebp + 8], eax
xor edi, edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov dword [esp + 0x18], edi
jmp case.0x42b799.1
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x42b8cc
push dword [ecx]
push eax
call fcn.0042b040
add esp, 8
test edi, edi
jne case.0x42b799.1
push 3
lea eax, [esp + 0x64]
push esi
push eax
call fcn.0044c210
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [esp + 0x88]
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x34]
cmp byte [esp + 0x17], bl
je 0x42b90f
cmp eax, 4
je case.0x42b799.1
mov dword [esi + 0x34], 4
jmp case.0x42b799.1
or ebx, 0xffffffff
cmp byte [esp + 0x15], 0
je 0x42b92e
cmp eax, 7
je case.0x42b799.1
mov dword [esi + 0x34], 7
jmp case.0x42b799.1
cmp eax, 5
je case.0x42b799.1
mov dword [esi + 0x34], 5
jmp case.0x42b799.1
mov eax, dword [esi + 0x18]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x240], bl
je 0x42b957
mov ebx, dword [eax + 0x78]
jmp 0x42b967
cmp byte [eax + 0x249], bl
je 0x42b964
mov ebx, dword [eax + 0x48]
jmp 0x42b967
mov ebx, dword [eax + 0x30]
push dword [eax + 0xec]
push ebx
push esi
call fcn.00444b30
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x42b9a7
push ebx
push 0x4837d8
xor edi, edi
mov dword [esi + 0x908], eax
push esi
mov byte [esi + 0x91c], 1
mov dword [esp + 0x24], edi
call fcn.0043b9c0
add esp, 0xc
cmp dword [esp + 0x1c], edi
jne 0x42b9bb
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.00445780
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
push esi
push ebp
call fcn.0042d290
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x42c7f7
cmp dword [esp + 0x1c], eax
je 0x42b9f0
lea eax, [esp + 0x15]
push eax
push esi
call fcn.004451d0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x42ba02
mov dword [esi + 0x18], ebx
test edi, edi
je case.0x42b799.1
mov byte [esp + 0x12], 1
jmp case.0x42b799.1
mov eax, dword [esi + 0x34]
jmp 0x42b90f
lea eax, [esp + 0x13]
push eax
push esi
call fcn.00446cc0
mov edi, eax
add esp, 8
mov eax, dword [esi + 0x18]
mov dword [esp + 0x18], edi
cmp byte [eax + 0x244], bl
je 0x42ba59
xor edi, edi
or ebx, 0xffffffff
push edi
push edi
push esi
mov dword [esp + 0x24], edi
call fcn.0042b0b0
add esp, 0xc
cmp dword [esi + 0x34], 3
je case.0x42b799.1
push esi
mov dword [esi + 0x34], 3
call fcn.00441b00
jmp 0x42c644
test edi, edi
jne 0x42b9f8
or ebx, 0xffffffff
cmp dword [esi + 0x34], 7
jmp 0x42b91c
lea eax, [esp + 0x15]
push eax
push 0
push 0
push esi
call fcn.0043af60
add esp, 0x10
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esp + 0x15], bl
je 0x42ba97
test edi, edi
jne 0x42ba9f
or ebx, 0xffffffff
cmp dword [esi + 0x34], 7
jmp 0x42b91c
test edi, edi
je case.0x42b799.1
push esi
call fcn.0042fbe0
push 1
push edi
push esi
call fcn.0042b0b0
add esp, 0x10
mov byte [esp + 0x12], 1
jmp case.0x42b799.1
test edi, edi
jne 0x42ba9f
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x247], bl
je 0x42bad9
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x42b799.1
test edi, edi
jne 0x42ba9f
mov eax, dword [esi + 0x18]
push edi
push eax
mov dword [esp + 0x28], eax
mov byte [esp + 0x1b], bl
call fcn.0043b490
add esp, 8
test al, al
mov eax, dword [esp + 0x20]
je 0x42bb25
cmp byte [eax + 0x24e], bl
je 0x42bb2d
mov eax, dword [eax + 0x260]
movzx ecx, byte [esp + 0x13]
mov dword [esp + 0x18], edi
cmp dword [eax + 0x18], ebx
mov eax, 1
cmove ecx, eax
mov eax, dword [esi + 0x34]
mov byte [esp + 0x13], cl
jmp 0x42bb70
cmp byte [eax + 0x24e], bl
jne 0x42bb5d
mov eax, dword [eax + 0x260]
mov eax, dword [eax + 0x14]
test eax, eax
je 0x42bb4d
lea ecx, [esp + 0x13]
push ecx
push esi
call eax
mov edi, eax
add esp, 8
test edi, edi
jne 0x42bb5d
jmp 0x42bb52
mov byte [esp + 0x13], 1
mov eax, dword [esp + 0x20]
mov byte [eax + 0x24e], 1
mov eax, dword [esi + 0x34]
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42ba9f
mov cl, byte [esp + 0x13]
test cl, cl
jne 0x42bb88
cmp eax, 8
je 0x42bb80
mov dword [esi + 0x34], 8
or ebx, 0xffffffff
jmp case.0x42b799.1
cmp eax, 9
je 0x42bb94
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x42b799.1
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x42bbdd
mov eax, dword [ecx + 0x260]
cmp dword [eax + 0x18], ebx
je 0x42bbdd
mov byte [esp + 0x13], bl
mov eax, dword [ecx + 0x260]
lea ecx, [esp + 0x13]
push ecx
push esi
mov eax, dword [eax + 0x18]
call eax
mov ecx, dword [esi + 0x34]
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42ba9f
mov al, byte [esp + 0x13]
jmp 0x42bbee
mov al, 1
xor edi, edi
mov byte [esp + 0x13], al
mov ecx, 8
mov dword [esp + 0x18], edi
test al, al
je case.0x42b799.1
cmp ecx, 9
jmp 0x42bb8b
mov edx, dword [esi + 0x1b4]
mov ecx, 9
test edx, edx
je 0x42bc87
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x42bc1e
mov byte [eax + 0x117], 1
mov edx, dword [esi + 0x1b4]
push dword [esi + 0xdac]
lea eax, [esi + 0xd7a]
push dword [esi + 0xda8]
push eax
lea eax, [esi + 0xd4c]
push eax
push dword [esi + 0x1b8]
call edx
mov ecx, dword [esi + 0x7c]
add esp, 0x14
test ecx, ecx
je 0x42bc50
mov byte [ecx + 0x117], bl
test eax, eax
je 0x42bc84
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.0043b8f0
mov edi, 0x2a
push esi
mov dword [esp + 0x24], edi
call fcn.0042fbe0
push 0
push edi
push esi
call fcn.0042b0b0
add esp, 0x18
mov byte [esp + 0x12], 1
jmp case.0x42b799.1
mov ecx, dword [esi + 0x34]
cmp byte [esi + 0x66d], 1
mov eax, dword [esi + 0x18]
jne 0x42bcb9
push 0
push eax
call fcn.0043dcc0
add esp, 8
cmp dword [esi + 0x34], 0xf
je 0x42bcab
mov dword [esi + 0x34], 0xf
xor edi, edi
or ebx, 0xffffffff
mov dword [esp + 0x18], edi
jmp case.0x42b799.1
mov eax, dword [eax + 0x260]
xor edi, edi
mov eax, dword [eax + 8]
test eax, eax
je 0x42bcd8
lea ecx, [esp + 0x14]
push ecx
push esi
call eax
mov ecx, dword [esi + 0x34]
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42bdcc
cmp byte [esp + 0x14], bl
jne 0x42bd7b
cmp byte [esi + 0xcee], bl
je 0x42bd63
mov eax, dword [esi + 0xd00]
mov al, byte [eax + 0x20]
cmp al, 7
je 0x42bd07
cmp al, 5
jne 0x42bd63
push 0
push 0
push esi
call fcn.0042b0b0
mov ebx, dword [esi + 0x18]
add esp, 0xc
mov eax, ebx
neg eax
sbb eax, eax
add eax, 0x10
cmp dword [esi + 0x34], eax
je 0x42bd5b
mov dword [esi + 0x34], eax
test ebx, ebx
jne 0x42bd43
mov eax, dword [esi + 0x7c]
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], ebx
jne 0x42bd43
push eax
call fcn.0042d160
add esp, 4
xor eax, eax
test ebx, ebx
sete al
mov eax, dword [eax*4 + 0x483654]
test eax, eax
je 0x42bd5b
push esi
call eax
add esp, 4
or ebx, 0xffffffff
jmp case.0x42b799.1
cmp ecx, 0xa
je 0x42bb94
mov dword [esi + 0x34], 0xa
or ebx, 0xffffffff
jmp case.0x42b799.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x24d], bl
je 0x42bd9e
cmp ecx, 0xb
je 0x42bb94
mov dword [esi + 0x34], 0xb
or ebx, 0xffffffff
jmp case.0x42b799.1
cmp ecx, 0xc
je 0x42bb94
push 7
lea eax, [esp + 0x74]
mov dword [esi + 0x34], 0xc
push esi
push eax
mov byte [esi + 0x138], bl
call fcn.0044c210
add esp, 0xc
or ebx, 0xffffffff
jmp case.0x42b799.1
cmp edi, 0x37
jne 0x42be83
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x247], bl
je 0x42be83
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ebx
push eax
push esi
call fcn.00442370
add esp, 8
test eax, eax
je 0x42be05
mov edi, eax
mov byte [esp + 0x12], 1
mov dword [esp + 0x18], edi
push esi
call fcn.0042fbe0
push 0
push edi
push esi
call fcn.0042b0b0
mov ecx, dword [esp + 0x2c]
add esp, 0x10
test ecx, ecx
je 0x42be72
test eax, eax
je 0x42be3a
cmp eax, 0x37
je 0x42be3a
mov edi, eax
push ecx
mov dword [esp + 0x1c], edi
call dword [0x49b004]
jmp 0x42c644
push 2
push ecx
push esi
call fcn.00441600
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x42be5e
cmp dword [esi + 0x34], 2
je 0x42be59
mov dword [esi + 0x34], 2
or ebx, 0xffffffff
xor edi, edi
mov ecx, dword [esp + 0x1c]
push ecx
mov dword [esp + 0x1c], edi
call dword [0x49b004]
jmp 0x42c644
push ecx
mov byte [esp + 0x16], 1
call dword [0x49b004]
jmp 0x42c644
push esi
call fcn.0042fbe0
add esp, 4
cmp dword [esi + 0x18], ebx
je 0x42bab1
push 0
push edi
push esi
call fcn.0042b0b0
add esp, 0xc
mov byte [esp + 0x12], 1
jmp case.0x42b799.1
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x42befe
mov eax, dword [ecx + 0x260]
cmp dword [eax + 0x1c], ebx
je 0x42befe
mov byte [esp + 0x14], bl
mov eax, dword [ecx + 0x260]
lea ecx, [esp + 0x14]
push ecx
push esi
mov eax, dword [eax + 0x1c]
call eax
mov edx, dword [esi + 0x34]
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x42bf0e
push esi
call fcn.0042fbe0
push 0
push edi
push esi
call fcn.0042b0b0
add esp, 0x10
mov byte [esp + 0x12], 1
jmp case.0x42b799.1
xor edi, edi
mov byte [esp + 0x14], 1
mov edx, 0xa
mov dword [esp + 0x18], edi
cmp byte [esp + 0x14], bl
je case.0x42b799.1
mov eax, dword [esi + 0x18]
mov cl, byte [eax + 0x24d]
xor eax, eax
test cl, cl
sete al
add eax, 0xb
cmp edx, eax
je 0x42bd5b
mov dword [esi + 0x34], eax
xor eax, eax
test cl, cl
sete al
mov eax, dword [eax*4 + 0x483644]
jmp 0x42bd51
mov eax, dword [esi + 0x18]
xor ecx, ecx
mov dword [esp + 0x38], ecx
xor edi, edi
mov eax, dword [eax + 0x260]
lea edx, [edi + 0xb]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x42bf78
lea ecx, [esp + 0x38]
push ecx
push esi
call eax
mov edx, dword [esi + 0x34]
add esp, 8
mov ecx, dword [esp + 0x38]
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42bee2
test ecx, ecx
je case.0x42b799.1
xor eax, eax
cmp ecx, 1
sete al
lea eax, [eax*2 + 0xa]
cmp edx, eax
je 0x42bd5b
mov dword [esi + 0x34], eax
mov eax, dword [eax*4 + 0x483618]
jmp 0x42bd51
mov eax, dword [esi + 0x18]
mov edx, 0xc
cmp byte [eax + 0x256], bl
je 0x42bfdc
mov ebx, dword [ebp + 0x24]
test ebx, ebx
je 0x42bfdc
push dword [ebx]
push ebp
call fcn.0042b040
mov edx, dword [esi + 0x34]
add esp, 8
mov eax, dword [esi + 0x18]
mov ecx, edx
cmp dword [eax + 0x278], 0xffffffff
jne 0x42c027
cmp dword [eax + 0x27c], 0xffffffff
jne 0x42c027
cmp byte [esi + 0xcee], 0
je 0x42c013
mov eax, dword [eax + 0x260]
test dword [eax + 0x50], 0x1000
jne 0x42c013
mov eax, dword [esi + 0xd00]
mov byte [eax + 0x20], 7
mov ecx, dword [esi + 0x34]
cmp ecx, 0xf
je 0x42c033
mov dword [esi + 0x34], 0xf
or ebx, 0xffffffff
jmp case.0x42b799.1
cmp edx, 0xd
je 0x42c033
mov dword [esi + 0x34], 0xd
or ebx, 0xffffffff
jmp case.0x42b799.1
push esi
call fcn.0044c540
add esp, 4
test eax, eax
je 0x42c059
mov eax, 0x2a
mov edi, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], edi
jmp 0x42c082
mov ecx, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.0044d920
add esp, 0x14
mov dword [esp + 0x30], eax
mov edi, eax
mov dword [esp + 0x18], edi
test eax, eax
je 0x42c0bb
mov edx, dword [esi + 0x18]
mov ecx, dword [edx + 0x260]
test byte [ecx + 0x50], 2
jne 0x42c0a1
cmp eax, 0x5c
je 0x42c0a1
push 2
push edx
call fcn.0043dcc0
add esp, 8
push esi
call fcn.0042fbe0
push 1
push dword [esp + 0x38]
push esi
call fcn.0042b0b0
add esp, 0x10
jmp case.0x42b799.1
mov edx, dword [esi + 0x208]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x20c]
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x30], xmm0
je 0x42c127
mov ebp, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x780]
push ecx
push edx
push dword [esi + 0x794]
movups xmmword [eax], xmm0
push dword [esi + 0x790]
push dword [esi + 0x6dc]
push dword [esi + 0x6d8]
call fcn.0044be50
mov ebp, dword [esp + 0xbc]
add esp, 0x38
mov dword [esp + 0x20], edx
jmp 0x42c133
mov eax, dword [esp + 0x34]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x30]
mov edx, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
mov dword [esp + 0x1c], eax
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x28], xmm0
je 0x42c1a1
mov ebp, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x798]
push ecx
push edx
push dword [esi + 0x7ac]
movups xmmword [eax], xmm0
push dword [esi + 0x7a8]
push dword [esi + 0x6d4]
push dword [esi + 0x6d0]
call fcn.0044be50
mov ebp, dword [esp + 0xbc]
add esp, 0x38
mov ecx, eax
jmp 0x42c1a9
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
or eax, dword [esp + 0x20]
jne 0x42c1e6
mov eax, ecx
or eax, edx
jne 0x42c1e6
cmp dword [esi + 0x34], 0xd
je 0x42c1c6
mov dword [esi + 0x34], 0xd
mov ecx, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.0044c8c0
add esp, 0x14
jmp case.0x42b799.1
cmp dword [esp + 0x20], edx
jl 0x42c20b
mov eax, dword [esp + 0x1c]
jg 0x42c1f6
cmp eax, ecx
jb 0x42c20b
push 0xb
push dword [esp + 0x24]
push eax
push esi
call fcn.00429c10
add esp, 0x10
jmp case.0x42b799.1
push 0xb
push edx
push ecx
push esi
call fcn.00429c10
add esp, 0x10
jmp case.0x42b799.1
mov edx, dword [esi + 0x208]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x20c]
mov eax, edx
or eax, ecx
mov dword [esp + 0x1c], ebx
mov byte [esp + 0x16], bl
movlpd qword [esp + 0x30], xmm0
je 0x42c291
mov ebp, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x780]
push ecx
push edx
push dword [esi + 0x794]
movups xmmword [eax], xmm0
push dword [esi + 0x790]
push dword [esi + 0x6dc]
push dword [esi + 0x6d8]
call fcn.0044be50
mov ebp, dword [esp + 0xbc]
add esp, 0x38
mov dword [esp + 0x24], edx
jmp 0x42c29d
mov eax, dword [esp + 0x34]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x30]
mov edx, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
mov dword [esp + 0x20], eax
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x28], xmm0
je 0x42c30f
mov ebp, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x798]
push ecx
push edx
push dword [esi + 0x7ac]
movups xmmword [eax], xmm0
push dword [esi + 0x7a8]
push dword [esi + 0x6d4]
push dword [esi + 0x6d0]
call fcn.0044be50
mov ebp, dword [esp + 0xbc]
add esp, 0x38
mov ecx, eax
mov dword [esp + 0x28], eax
jmp 0x42c31b
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x20]
or eax, dword [esp + 0x24]
mov dword [esp + 0x30], edx
jne 0x42c51c
mov eax, ecx
or eax, edx
jne 0x42c51c
push esi
call fcn.00441f50
add esp, 4
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0x12e], bl
jne 0x42c398
cmp edi, 0x38
je 0x42c398
cmp edi, 0x5c
jne 0x42c3d2
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x260]
test byte [eax + 0x50], 2
jne 0x42c377
cmp edi, 0x5c
je 0x42c377
push 2
push ecx
call fcn.0043dcc0
add esp, 8
push esi
call fcn.0042fbe0
push 1
push edi
push esi
call fcn.0042b0b0
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x49b004]
jmp 0x42c644
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.00442370
add esp, 8
test eax, eax
jne 0x42c3c8
cmp dword [esp + 0x1c], ebx
setne al
mov byte [esp + 0x16], al
test al, al
je 0x42c3d2
xor edi, edi
mov byte [esi + 0x12e], 1
mov dword [esp + 0x18], edi
jmp 0x42c3d6
test edi, edi
jne 0x42c358
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42c358
cmp byte [esi + 0x12e], bl
je 0x42c4f2
push esi
call fcn.0043d130
add esp, 4
test al, al
jne 0x42c4f2
push esi
call fcn.0042fbe0
add esp, 4
cmp byte [esp + 0x16], bl
jne 0x42c4a8
cmp dword [esi + 0x120], ebx
jne 0x42c484
cmp dword [esi + 0x11c], ebx
je 0x42c465
push dword [esp + 0x1c]
call dword [0x49b004]
mov eax, dword [esi + 0x11c]
push 1
push eax
push esi
mov dword [esp + 0x2c], eax
mov dword [esi + 0x11c], ebx
call fcn.00441600
mov edi, eax
add esp, 0x10
mov dword [esp + 0x18], edi
test edi, edi
je 0x42c465
push 1
push edi
push esi
mov byte [esp + 0x1e], 1
call fcn.0042b0b0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42c389
cmp dword [esi + 0x34], 0xf
je 0x42c472
mov dword [esi + 0x34], 0xf
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x49b004]
jmp 0x42c644
push dword [esp + 0x1c]
call dword [0x49b004]
mov eax, dword [esi + 0x120]
add esp, 4
mov dword [esp + 0x1c], eax
mov edi, 3
mov dword [esi + 0x120], ebx
jmp 0x42c4ad
mov edi, 2
push 0
push 0
push esi
call fcn.0042b0b0
push edi
push dword [esp + 0x2c]
push esi
call fcn.00441600
mov edi, eax
add esp, 0x18
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42c389
cmp dword [esi + 0x34], 2
je 0x42c4e0
mov dword [esi + 0x34], 2
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x49b004]
jmp 0x42c644
cmp byte [esi + 0xce7], bl
je 0x42c389
push 8
push 0
push 0
push esi
call fcn.00429c10
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x49b004]
jmp 0x42c644
mov ecx, dword [esp + 0x88]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.0044c8c0
add esp, 0x14
cmp dword [esi + 0x34], 0xe
je 0x42c544
mov dword [esi + 0x34], 0xe
mov ecx, dword [esp + 0x24]
cmp ecx, dword [esp + 0x30]
jl 0x42c56e
mov eax, dword [esp + 0x20]
jg 0x42c578
mov edx, dword [esp + 0x28]
cmp eax, edx
jb 0x42c572
push 0xb
push ecx
push eax
push esi
call fcn.00429c10
add esp, 0x10
jmp case.0x42b799.1
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
mov eax, edx
push 0xb
push ecx
push eax
push esi
call fcn.00429c10
add esp, 0x10
jmp case.0x42b799.1
mov eax, dword [esi + 0x18]
or ebx, 0xffffffff
test eax, eax
je 0x42c5c4
cmp byte [eax + 0x256], 0
je 0x42c5af
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x42c5af
push dword [eax]
push ebp
call fcn.0042b040
add esp, 8
push 0
push edi
push esi
call fcn.0042b0b0
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0xcee], 0
je 0x42c5e8
mov eax, dword [esi + 0xd00]
cmp byte [eax + 0x20], 7
je 0x42c5e8
cmp dword [esi + 0x34], 0
je case.0x42b799.1
mov dword [esi + 0x34], 0
jmp case.0x42b799.1
cmp dword [esi + 0x34], 0x10
je case.0x42b799.1
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x42c60d
push eax
call fcn.0042d160
add esp, 4
mov eax, dword [esi + 0x18]
mov dword [esp + 0x30], eax
test eax, eax
je 0x42c637
push esi
push eax
call fcn.0043b0e0
push 0
lea eax, [esi + 0x28]
push eax
mov eax, dword [esp + 0x40]
add eax, 0x2b4
push eax
call fcn.00444350
add esp, 0x14
push esi
mov dword [esi + 0x18], 0
call fcn.00429e20
add esp, 4
mov eax, dword [esi + 0x34]
sub eax, 3
cmp eax, 5
ja 0x42c680
cmp ebx, 0xffffffff
je 0x42c680
cmp byte [ebp + 0x116], 0
jne 0x42c680
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x1a]
push eax
push dword [esp + 0x94]
push esi
call fcn.0042b4e0
mov edi, dword [esp + 0x2c]
add esp, 0x14
mov eax, dword [esi + 0x34]
cmp eax, 0x10
jge 0x42c7d8
test edi, edi
je 0x42c761
mov ecx, dword [ebp + 0x24]
test ecx, ecx
je 0x42c6a9
push dword [ecx]
push ebp
call fcn.0042b040
mov eax, dword [esi + 0x34]
add esp, 8
mov ebx, dword [esi + 0x18]
test ebx, ebx
je 0x42c6f8
cmp byte [esp + 0x12], 0
je 0x42c706
cmp edi, 0x1c
push esi
push ebx
sete byte [esp + 0x44]
call fcn.0043b0e0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x2b4]
push eax
call fcn.00444350
push 1
push ebx
push esi
mov dword [esi + 0x18], 0
call fcn.00433b30
push dword [esp + 0x5c]
push ebx
push esi
call fcn.00437300
add esp, 0x2c
jmp 0x42c706
cmp eax, 3
jne 0x42c706
push esi
call fcn.0042fbe0
add esp, 4
cmp dword [esi + 0x34], 0x10
je 0x42c7d5
mov eax, dword [esi + 0x7c]
mov dword [esi + 0x34], 0x10
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x42c72f
push eax
call fcn.0042d160
add esp, 4
mov ebx, dword [esi + 0x18]
test ebx, ebx
je 0x42c752
push esi
push ebx
call fcn.0043b0e0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x2b4]
push eax
call fcn.00444350
add esp, 0x14
push esi
mov dword [esi + 0x18], 0
call fcn.00429e20
jmp 0x42c7d2
cmp dword [esi + 0x18], 0
je 0x42c7d8
push esi
call fcn.0044c540
add esp, 4
test eax, eax
je 0x42c7d8
push 2
push dword [esi + 0x18]
mov edi, 0x2a
mov dword [esp + 0x20], edi
call fcn.0043dcc0
mov ebx, dword [esi + 0x34]
xor eax, eax
add esp, 8
cmp ebx, 0xf
setge al
add eax, 0xf
cmp ebx, eax
je 0x42c7d5
mov dword [esi + 0x34], eax
cmp ebx, 0xf
jl 0x42c7bc
mov eax, dword [esi + 0x7c]
dec dword [eax + 0x10]
mov eax, dword [esi + 0x7c]
cmp dword [eax + 0x10], 0
jne 0x42c7bc
push eax
call fcn.0042d160
add esp, 4
xor eax, eax
cmp ebx, 0xf
setge al
mov eax, dword [eax*4 + 0x483654]
test eax, eax
je 0x42c7d5
push esi
call eax
add esp, 4
or ebx, 0xffffffff
cmp dword [esi + 0x34], 0x10
je 0x42c801
cmp ebx, 0xffffffff
je 0x42b720
cmp byte [ebp + 0x116], 0
jne 0x42b720
mov dword [esi + 0x38], edi
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
mov eax, dword [esi + 0x648]
test eax, eax
je 0x42c814
push edi
push esi
call eax
add esp, 8
jmp 0x42c832
lea eax, [esi + 0x3c]
mov dword [eax + 0xc], 1
push eax
push eax
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
lea eax, [ebp + 0x14]
push eax
call fcn.00444190
add esp, 0xc
cmp dword [esi + 0x34], 0x11
je 0x42c83f
mov dword [esi + 0x34], 0x11
lea eax, [esi + 0x1c]
push eax
lea eax, [ebp + 0x34]
push esi
push eax
call fcn.00444190
push esi
push ebp
call fcn.0042d690
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x70
ret