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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
mov esi, dword [esp + 0x78]
push edi
xor edi, edi
mov byte [esp + 0x14], 0
mov byte [esp + 0x15], 0
mov dword [esp + 0x18], edi
test esi, esi
je 0x420792
cmp dword [esi], 0xc0dedbad
jne 0x420792
mov ebp, dword [esp + 0x74]
mov ebx, fcn.0041dc80
cmp byte [ebp + 0x118], 0
je 0x41f830
mov edi, 0x2a
push esi
mov dword [esp + 0x1c], edi
call fcn.004301b0
push 0
push edi
push esi
call fcn.0041f200
add esp, 0x10
cmp dword [esi + 0x34], 0x10
je 0x41f830
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 0x41f821
push eax
call fcn.00420f00
add esp, 4
test ebx, ebx
je 0x41f830
push esi
call fcn.0041dc80
add esp, 4
nop
mov al, byte [ebp + 0x116]
xor ebx, ebx
mov byte [esp + 0x7c], 0
mov byte [ebp + 0x116], bl
test al, al
je 0x41f859
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x41f859
push dword [eax]
push ebp
call fcn.0041f0b0
add esp, 8
mov eax, dword [esi + 0x34]
cmp eax, 3
jle 0x41f872
cmp eax, 0x10
jge 0x41f86f
cmp dword [esi + 0x18], ebx
je case.default.0x41f8b0
cmp eax, 3
jl 0x41f8a4
cmp eax, 0x10
jge 0x41f8a4
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x84]
push eax
push dword [esp + 0x84]
push esi
call fcn.0041f630
mov edi, dword [esp + 0x2c]
add esp, 0x14
test al, al
jne 0x42065f
mov eax, dword [esi + 0x34]
cmp eax, 0x11
ja case.default.0x41f8b0
jmp dword [eax*4 + 0x4207a0]
push esi
call fcn.004380a0
mov edi, eax
add esp, 4
mov dword [esp + 0x18], edi
test edi, edi
jne case.0x41f8b0.1
cmp dword [esi + 0x34], 2
je 0x41f8db
mov dword [esi + 0x34], 2
push 1
lea eax, [esp + 0x44]
push esi
push eax
call fcn.00440e00
add esp, 0xc
push 2
lea eax, [esp + 0x54]
push esi
push eax
call fcn.00440e00
add esp, 0xc
movups xmm0, xmmword [eax]
mov eax, dword [esp + 0x78]
movups xmmword [eax], xmm0
mov eax, dword [esi + 0x1d8]
test eax, eax
je 0x41f91d
push 0xa
push 0
push eax
push esi
call fcn.0041dd50
add esp, 0x10
mov eax, dword [esi + 0x1dc]
test eax, eax
je 0x41f935
push 2
push 0
push eax
push esi
call fcn.0041dd50
add esp, 0x10
cmp dword [esi + 0x34], 3
je case.0x41f8b0.3
mov eax, fcn.00438000
mov dword [esi + 0x34], 3
test eax, eax
je case.0x41f8b0.3
push esi
call fcn.00438000
add esp, 4
lea eax, [esp + 0x13]
push eax
lea eax, [esp + 0x1b]
push eax
push esi
call fcn.0042ada0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
cmp edi, 0x59
jne 0x41f9a2
cmp dword [esi + 0x34], 1
je 0x41f97f
mov dword [esi + 0x34], 1
lea eax, [esi + 0x1c]
push eax
lea eax, [ebp + 0x24]
push esi
push eax
call fcn.00438f40
push esi
push ebp
call fcn.004215c0
add esp, 0x14
xor edi, edi
mov dword [esp + 0x18], edi
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x41f9b7
push dword [ecx]
push eax
call fcn.0041f0b0
add esp, 8
test edi, edi
jne case.0x41f8b0.1
push 3
lea eax, [esp + 0x64]
push esi
push eax
call fcn.00440e00
mov ecx, dword [esp + 0x84]
add esp, 0xc
movups xmm0, xmmword [eax]
movups xmmword [ecx], xmm0
cmp byte [esp + 0x17], bl
je 0x41f9f8
cmp dword [esi + 0x34], 4
je 0x420626
mov dword [esi + 0x34], 4
jmp 0x420638
or ebx, 0xffffffff
cmp byte [esp + 0x13], 0
je 0x41fa80
cmp dword [esi + 0x34], 7
je 0x420626
mov dword [esi + 0x34], 7
cmp dword [esi + 0x18], 0
je 0x41fa52
push esi
call fcn.00440fd0
add esp, 4
test eax, eax
je 0x41fa52
push 2
push dword [esi + 0x18]
mov edi, 0x2a
mov dword [esp + 0x20], edi
call fcn.00432230
xor eax, eax
cmp dword [esi + 0x34], 0xf
setge al
add eax, 0xf
push eax
push esi
call fcn.0041f120
add esp, 0x10
or ebx, 0xffffffff
cmp dword [esi + 0x34], 0x10
je 0x420732
cmp ebx, 0xffffffff
je 0x41f830
mov al, byte [ebp + 0x116]
test al, al
jne 0x41f830
mov dword [esi + 0x38], edi
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
cmp dword [esi + 0x34], 5
je 0x420626
mov dword [esi + 0x34], 5
jmp 0x41fa13
mov eax, dword [esi + 0x18]
mov dword [esp + 0x1c], ebx
cmp byte [eax + 0x240], bl
je 0x41faa7
mov ebx, dword [eax + 0x78]
jmp 0x41fab7
cmp byte [eax + 0x249], bl
je 0x41fab4
mov ebx, dword [eax + 0x48]
jmp 0x41fab7
mov ebx, dword [eax + 0x30]
push dword [eax + 0xec]
push ebx
push esi
call fcn.00439730
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x41faf7
push ebx
push 0x54f908
xor edi, edi
mov dword [esi + 0x918], eax
push esi
mov byte [esi + 0x92c], 1
mov dword [esp + 0x24], edi
call fcn.0042ffe0
add esp, 0xc
cmp dword [esp + 0x1c], edi
jne 0x41fb0b
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.0043a190
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
push esi
push ebp
call fcn.004211f0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x41fa76
cmp dword [esp + 0x1c], eax
je 0x41fb40
lea eax, [esp + 0x13]
push eax
push esi
call fcn.00439de0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
je 0x41fb56
mov dword [esi + 0x18], ebx
mov ecx, dword [esp + 0x78]
test edi, edi
je 0x420626
mov byte [esp + 0x7c], 1
jmp 0x420626
or ebx, 0xffffffff
cmp byte [esp + 0x13], 0
je 0x41fb6f
cmp dword [esi + 0x34], 7
je case.0x41f8b0.1
jmp 0x41fa0c
cmp dword [esi + 0x34], 5
je case.0x41f8b0.1
mov dword [esi + 0x34], 5
jmp 0x41fa13
lea eax, [esp + 0x14]
push eax
push esi
call fcn.0043b560
mov edi, eax
add esp, 8
mov eax, dword [esi + 0x18]
mov dword [esp + 0x18], edi
cmp byte [eax + 0x244], bl
je 0x41fbe1
xor edi, edi
or ebx, 0xffffffff
push edi
push edi
push esi
mov dword [esp + 0x24], edi
call fcn.0041f200
add esp, 0xc
cmp dword [esi + 0x34], 3
je case.0x41f8b0.1
mov eax, fcn.00438000
mov dword [esi + 0x34], 3
test eax, eax
je 0x41fa13
push esi
call fcn.00438000
jmp 0x42061f
test edi, edi
jne 0x41fc31
or ebx, 0xffffffff
jmp 0x41fb60
lea eax, [esp + 0x13]
push eax
push 0
push 0
push esi
call fcn.0042f5a0
add esp, 0x10
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esp + 0x13], bl
je 0x41fc17
test edi, edi
jne 0x41fc1f
or ebx, 0xffffffff
jmp 0x41fb60
test edi, edi
je case.0x41f8b0.1
push esi
call fcn.004301b0
push 1
push edi
push esi
call fcn.0041f200
add esp, 0x10
mov byte [esp + 0x7c], 1
jmp case.0x41f8b0.1
test edi, edi
jne 0x41fc1f
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x247], bl
je 0x41fc59
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp 0x41fa13
lea eax, [esp + 0x14]
push eax
push esi
call fcn.00421010
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x41fc1f
cmp byte [esp + 0x14], bl
jne 0x41fcb2
cmp dword [esi + 0x34], 8
je 0x41fc84
mov dword [esi + 0x34], 8
or ebx, 0xffffffff
jmp case.0x41f8b0.1
lea eax, [esp + 0x14]
push eax
push esi
call fcn.00421090
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x41fc1f
cmp byte [esp + 0x14], bl
je case.0x41f8b0.1
cmp dword [esi + 0x34], 9
je 0x41fcbf
mov dword [esi + 0x34], 9
or ebx, 0xffffffff
jmp case.0x41f8b0.1
cmp dword [esi + 0x1b4], ebx
je 0x41fd49
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x41fcdd
mov byte [eax + 0x117], 1
push dword [esi + 0xdbc]
lea eax, [esi + 0xd8a]
push dword [esi + 0xdb8]
push eax
lea eax, [esi + 0xd5c]
push eax
push dword [esi + 0x1b8]
mov eax, dword [esi + 0x1b4]
call eax
mov ecx, dword [esi + 0x7c]
add esp, 0x14
test ecx, ecx
je 0x41fd15
mov byte [ecx + 0x117], bl
test eax, eax
je 0x41fd49
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.0042ff10
mov edi, 0x2a
push esi
mov dword [esp + 0x24], edi
call fcn.004301b0
push 0
push edi
push esi
call fcn.0041f200
add esp, 0x18
mov byte [esp + 0x7c], 1
jmp case.0x41f8b0.1
cmp byte [esi + 0x67d], 1
jne 0x41fd7a
push 0
push dword [esi + 0x18]
call fcn.00432230
add esp, 8
cmp dword [esi + 0x34], 0xf
je 0x41fd6c
mov dword [esi + 0x34], 0xf
xor edi, edi
or ebx, 0xffffffff
mov dword [esp + 0x18], edi
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x18]
xor edi, edi
mov eax, dword [eax + 0x260]
mov eax, dword [eax + 8]
test eax, eax
je 0x41fd99
lea ecx, [esp + 0x15]
push ecx
push esi
call eax
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x41fe46
cmp byte [esp + 0x15], bl
jne 0x41fdff
cmp byte [esi + 0xcfe], bl
je 0x41fdea
mov eax, dword [esi + 0xd10]
mov al, byte [eax + 0x20]
cmp al, 7
je 0x41fdc4
cmp al, 5
jne 0x41fdea
push 0
push 0
push esi
call fcn.0041f200
mov eax, dword [esi + 0x18]
neg eax
sbb eax, eax
add eax, 0x10
push eax
push esi
call fcn.0041f120
add esp, 0x14
or ebx, 0xffffffff
jmp case.0x41f8b0.1
cmp dword [esi + 0x34], 0xa
je 0x41fdf7
mov dword [esi + 0x34], 0xa
or ebx, 0xffffffff
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x24d], bl
je 0x41fe1f
cmp dword [esi + 0x34], 0xb
je 0x41fe17
mov dword [esi + 0x34], 0xb
or ebx, 0xffffffff
jmp case.0x41f8b0.1
cmp dword [esi + 0x34], 0xc
je 0x41fe3e
mov eax, fcn.0041dc60
mov dword [esi + 0x34], 0xc
test eax, eax
je 0x41fe3e
push esi
call fcn.0041dc60
add esp, 4
or ebx, 0xffffffff
jmp case.0x41f8b0.1
cmp edi, 0x37
jne 0x41ff00
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x247], bl
je 0x41ff00
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ebx
push eax
push esi
call fcn.004387c0
add esp, 8
test eax, eax
je 0x41fe7f
mov edi, eax
mov byte [esp + 0x7c], 1
mov dword [esp + 0x18], edi
push esi
call fcn.004301b0
push 0
push edi
push esi
call fcn.0041f200
mov ecx, dword [esp + 0x2c]
add esp, 0x10
test ecx, ecx
je 0x41feec
test eax, eax
je 0x41feb4
cmp eax, 0x37
je 0x41feb4
mov edi, eax
push ecx
mov dword [esp + 0x1c], edi
call dword [0x5a8004]
jmp 0x42061f
push 2
push ecx
push esi
call fcn.00437b10
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x41fed8
cmp dword [esi + 0x34], 2
je 0x41fed3
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 [0x5a8004]
jmp 0x42061f
push ecx
mov byte [esp + 0x80], 1
call dword [0x5a8004]
jmp 0x42061f
push esi
call fcn.004301b0
add esp, 4
cmp dword [esi + 0x18], ebx
je 0x41ff1a
push 0
push edi
push esi
call fcn.0041f200
add esp, 0xc
mov byte [esp + 0x7c], 1
jmp case.0x41f8b0.1
lea eax, [esp + 0x15]
push eax
push esi
call fcn.004210d0
mov edi, eax
add esp, 8
mov dword [esp + 0x18], edi
test edi, edi
jne 0x41ff69
cmp byte [esp + 0x15], bl
je case.0x41f8b0.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
cmp byte [eax + 0x24d], cl
sete cl
add ecx, 0xb
push ecx
push esi
call fcn.0041f120
add esp, 8
or ebx, 0xffffffff
jmp case.0x41f8b0.1
push esi
call fcn.004301b0
push 0
push edi
push esi
call fcn.0041f200
add esp, 0x10
mov byte [esp + 0x7c], 1
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
mov dword [esp + 0x30], ecx
xor edi, edi
mov eax, dword [eax + 0x260]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x41ffae
lea ecx, [esp + 0x30]
push ecx
push esi
call eax
mov ecx, dword [esp + 0x38]
add esp, 8
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x41ff69
test ecx, ecx
je case.0x41f8b0.1
xor eax, eax
cmp ecx, 1
sete al
lea eax, [eax*2 + 0xa]
push eax
push esi
call fcn.0041f120
add esp, 8
or ebx, 0xffffffff
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x256], bl
je 0x41fffc
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x41fffc
push dword [eax]
push ebp
call fcn.0041f0b0
add esp, 8
mov eax, dword [esi + 0x18]
cmp dword [eax + 0x278], 0xffffffff
jne 0x420047
cmp dword [eax + 0x27c], 0xffffffff
jne 0x420047
cmp byte [esi + 0xcfe], bl
je 0x420032
mov eax, dword [eax + 0x260]
test dword [eax + 0x50], 0x1000
jne 0x420032
mov eax, dword [esi + 0xd10]
mov byte [eax + 0x20], 7
cmp dword [esi + 0x34], 0xf
je 0x420054
mov dword [esi + 0x34], 0xf
or ebx, 0xffffffff
jmp case.0x41f8b0.1
cmp dword [esi + 0x34], 0xd
je 0x420054
mov dword [esi + 0x34], 0xd
or ebx, 0xffffffff
jmp case.0x41f8b0.1
push esi
call fcn.00440fd0
add esp, 4
test eax, eax
je 0x420074
mov edi, 0x2a
mov dword [esp + 0x18], edi
jmp 0x420096
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00442240
mov edi, eax
add esp, 0x14
mov dword [esp + 0x18], edi
test edi, edi
je 0x4200cc
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x260]
test byte [eax + 0x50], 2
jne 0x4200b5
cmp edi, 0x5c
je 0x4200b5
push 2
push ecx
call fcn.00432230
add esp, 8
push esi
call fcn.004301b0
push 1
push edi
push esi
call fcn.0041f200
add esp, 0x10
jmp case.0x41f8b0.1
mov edx, dword [esi + 0x208]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x20c]
mov eax, edx
or eax, ecx
movlpd qword [esp + 0x34], xmm0
je 0x420135
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x790]
push ecx
push edx
push dword [esi + 0x7a4]
movups xmmword [eax], xmm0
push dword [esi + 0x7a0]
push dword [esi + 0x6ec]
push dword [esi + 0x6e8]
call fcn.00440b40
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov dword [esp + 0x20], edx
jmp 0x420141
mov eax, dword [esp + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x34]
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 0x4201ac
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7a8]
push ecx
push edx
push dword [esi + 0x7bc]
movups xmmword [eax], xmm0
push dword [esi + 0x7b8]
push dword [esi + 0x6e4]
push dword [esi + 0x6e0]
call fcn.00440b40
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov ecx, eax
jmp 0x4201b4
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x1c]
or eax, dword [esp + 0x20]
jne 0x4201ee
mov eax, ecx
or eax, edx
jne 0x4201ee
cmp dword [esi + 0x34], 0xd
je 0x4201d1
mov dword [esi + 0x34], 0xd
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00441160
add esp, 0x14
jmp case.0x41f8b0.1
cmp dword [esp + 0x20], edx
jl 0x420213
mov eax, dword [esp + 0x1c]
jg 0x4201fe
cmp eax, ecx
jb 0x420213
push 0xb
push dword [esp + 0x24]
push eax
push esi
call fcn.0041dd50
add esp, 0x10
jmp case.0x41f8b0.1
push 0xb
push edx
push ecx
push esi
call fcn.0041dd50
add esp, 0x10
jmp case.0x41f8b0.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 + 0x34], xmm0
je 0x420296
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x790]
push ecx
push edx
push dword [esi + 0x7a4]
movups xmmword [eax], xmm0
push dword [esi + 0x7a0]
push dword [esi + 0x6ec]
push dword [esi + 0x6e8]
call fcn.00440b40
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov dword [esp + 0x24], edx
jmp 0x4202a2
mov eax, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x34]
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 0x420311
mov ebp, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7a8]
push ecx
push edx
push dword [esi + 0x7bc]
movups xmmword [eax], xmm0
push dword [esi + 0x7b8]
push dword [esi + 0x6e4]
push dword [esi + 0x6e0]
call fcn.00440b40
mov ebp, dword [esp + 0xac]
add esp, 0x38
mov ecx, eax
mov dword [esp + 0x28], eax
jmp 0x42031d
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 + 0x34], edx
jne 0x42052b
mov eax, ecx
or eax, edx
jne 0x42052b
push esi
call fcn.00438460
add esp, 4
mov edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0x12e], bl
jne 0x42039a
cmp edi, 0x38
je 0x42039a
cmp edi, 0x5c
jne 0x4203d4
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x260]
test byte [eax + 0x50], 2
jne 0x420379
cmp edi, 0x5c
je 0x420379
push 2
push ecx
call fcn.00432230
add esp, 8
push esi
call fcn.004301b0
push 1
push edi
push esi
call fcn.0041f200
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x5a8004]
jmp 0x42061f
lea eax, [esp + 0x1c]
push eax
push esi
call fcn.004387c0
add esp, 8
test eax, eax
jne 0x4203ca
cmp dword [esp + 0x1c], ebx
setne al
mov byte [esp + 0x16], al
test al, al
je 0x4203d4
xor edi, edi
mov byte [esi + 0x12e], 1
mov dword [esp + 0x18], edi
jmp 0x4203d8
test edi, edi
jne 0x42035a
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42035a
cmp byte [esi + 0x12e], bl
je 0x420501
push esi
call fcn.004317a0
add esp, 4
test al, al
jne 0x420501
push esi
call fcn.004301b0
add esp, 4
cmp dword [esi + 0x120], ebx
jne 0x42048d
cmp byte [esp + 0x16], bl
jne 0x4204b7
cmp dword [esi + 0x11c], ebx
je 0x42046e
push dword [esp + 0x1c]
call dword [0x5a8004]
mov eax, dword [esi + 0x11c]
push 1
push eax
push esi
mov dword [esp + 0x2c], eax
mov dword [esi + 0x11c], ebx
call fcn.00437b10
mov edi, eax
add esp, 0x10
mov dword [esp + 0x18], edi
test edi, edi
je 0x42046e
push 1
push edi
push esi
mov byte [esp + 0x88], 1
call fcn.0041f200
mov edi, eax
add esp, 0xc
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42038b
cmp dword [esi + 0x34], 0xf
je 0x42047b
mov dword [esi + 0x34], 0xf
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x5a8004]
jmp 0x42061f
cmp byte [esp + 0x16], bl
jne 0x4204b7
push dword [esp + 0x1c]
call dword [0x5a8004]
mov eax, dword [esi + 0x120]
add esp, 4
mov dword [esp + 0x1c], eax
mov edi, 3
mov dword [esi + 0x120], ebx
jmp 0x4204bc
mov edi, 2
push 0
push 0
push esi
call fcn.0041f200
push edi
push dword [esp + 0x2c]
push esi
call fcn.00437b10
mov edi, eax
add esp, 0x18
mov dword [esp + 0x18], edi
test edi, edi
jne 0x42038b
cmp dword [esi + 0x34], 2
je 0x4204ef
mov dword [esi + 0x34], 2
push dword [esp + 0x1c]
or ebx, 0xffffffff
call dword [0x5a8004]
jmp 0x42061f
cmp byte [esi + 0xcf7], bl
je 0x42038b
push 8
push 0
push 0
push esi
call fcn.0041dd50
add esp, 0x10
push dword [esp + 0x1c]
call dword [0x5a8004]
jmp 0x42061f
mov ecx, dword [esp + 0x78]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00441160
add esp, 0x14
cmp dword [esi + 0x34], 0xe
je 0x420550
mov dword [esi + 0x34], 0xe
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
cmp edx, ecx
jl 0x42057d
jg 0x420568
mov eax, dword [esp + 0x28]
cmp dword [esp + 0x20], eax
jb 0x420581
push 0xb
push edx
push dword [esp + 0x28]
push esi
call fcn.0041dd50
add esp, 0x10
jmp case.0x41f8b0.1
mov eax, dword [esp + 0x28]
push 0xb
push ecx
push eax
push esi
call fcn.0041dd50
add esp, 0x10
jmp case.0x41f8b0.1
mov eax, dword [esi + 0x18]
or ebx, 0xffffffff
test eax, eax
je 0x4205c4
cmp byte [eax + 0x256], 0
je 0x4205af
push ebp
call fcn.00420ff0
add esp, 4
push 0
push edi
push esi
call fcn.0041f200
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [esp + 0x18], edi
cmp byte [esi + 0xcfe], 0
je 0x4205eb
mov eax, dword [esi + 0xd10]
cmp byte [eax + 0x20], 7
je 0x4205eb
cmp dword [esi + 0x34], 0
je case.0x41f8b0.1
mov dword [esi + 0x34], 0
jmp 0x420669
cmp dword [esi + 0x34], 0x10
je case.0x41f8b0.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 0x420610
push eax
call fcn.00420f00
add esp, 4
mov eax, fcn.0041dc80
test eax, eax
je case.0x41f8b0.1
push esi
call fcn.0041dc80
add esp, 4
mov ecx, dword [esp + 0x78]
mov eax, dword [esi + 0x34]
cmp eax, 3
jl 0x42065f
cmp eax, 9
jge 0x42065f
cmp ebx, 0xffffffff
je 0x42065f
mov al, byte [ebp + 0x116]
test al, al
jne 0x42065f
push 0
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x84]
push eax
push ecx
push esi
call fcn.0041f630
mov edi, dword [esp + 0x2c]
add esp, 0x14
cmp dword [esi + 0x34], 0x10
jge 0x41fa56
test edi, edi
je 0x41fa13
mov eax, dword [ebp + 0x24]
test eax, eax
je 0x420683
push dword [eax]
push ebp
call fcn.0041f0b0
add esp, 8
mov ebx, dword [esi + 0x18]
test ebx, ebx
je 0x4206d2
cmp byte [esp + 0x7c], 0
je 0x4206e1
cmp edi, 0x1c
push esi
push ebx
sete byte [esp + 0x44]
call fcn.0042f6d0
push 0
lea eax, [esi + 0x28]
push eax
lea eax, [ebx + 0x2b4]
push eax
call fcn.00439090
push 1
push ebx
push esi
mov dword [esi + 0x18], 0
call fcn.004277b0
push dword [esp + 0x5c]
push ebx
push esi
call fcn.0042ae40
add esp, 0x2c
jmp 0x4206e1
cmp dword [esi + 0x34], 3
jne 0x4206e1
push esi
call fcn.004301b0
add esp, 4
cmp dword [esi + 0x34], 0x10
je 0x41fa4f
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 0x42070a
push eax
call fcn.00420f00
add esp, 4
mov eax, fcn.0041dc80
test eax, eax
je 0x41fa4f
push esi
call fcn.0041dc80
add esp, 4
jmp 0x41fa4f
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
mov eax, dword [esi + 0x658]
test eax, eax
je 0x420745
push edi
push esi
call eax
add esp, 8
jmp 0x420763
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.00438f40
add esp, 0xc
cmp dword [esi + 0x34], 0x11
je 0x420770
mov dword [esi + 0x34], 0x11
lea eax, [esi + 0x1c]
push eax
lea eax, [ebp + 0x34]
push esi
push eax
call fcn.00438f40
push esi
push ebp
call fcn.004215c0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
pop edi
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x60
ret