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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
xor edi, edi
mov byte [ebp - 2], 0
mov byte [ebp - 3], 0
mov byte [ebp - 4], 0
mov dword [ebp - 0x10], edi
test esi, esi
je 0x47bb85
cmp dword [esi], 0xc0dedbad
jne 0x47bb85
mov ebx, dword [ebp + 8]
cmp byte [ebx + 0x100], 0
je 0x47ad80
mov edi, 0x2a
push esi
mov dword [ebp - 0x10], edi
call fcn.00496e10
push 0
push edi
push esi
call fcn.0047a800
push 0xf
push esi
call fcn.0047a690
add esp, 0x18
nop
xor eax, eax
mov byte [ebp + 0x13], 0
push 1
push ebx
mov dword [ebp - 0xc], eax
call fcn.0047ad00
add esp, 8
test al, al
je 0x47ada1
push ebx
call fcn.0047c5d0
add esp, 4
mov ecx, dword [esi + 0x34]
lea ebx, [esi + 0x18]
lea eax, [ecx - 3]
cmp eax, 0xb
ja 0x47adc0
cmp dword [ebx], 0
jne 0x47adc5
mov eax, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx], 0
je 0x47adee
lea eax, [ecx - 2]
cmp eax, 0xc
ja 0x47adee
push 0
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp + 0x13]
push eax
push dword [ebp + 0xc]
push esi
call fcn.0047aba0
mov edi, dword [ebp - 0x10]
add esp, 0x14
test al, al
jne 0x47ba36
mov eax, dword [esi + 0x34]
cmp eax, 0x10
ja case.default.0x47adf6
jmp dword [eax*4 + 0x47bb94]
push esi
call fcn.00496e20
mov edi, eax
add esp, 4
mov dword [ebp - 0x10], edi
test edi, edi
jne case.0x47adf6.1
push 2
push esi
call fcn.0047a690
push 1
lea eax, [ebp - 0x40]
push esi
push eax
call fcn.00498420
add esp, 0x14
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
movups xmm0, xmmword [eax]
mov eax, dword [ebp + 0xc]
movups xmmword [eax], xmm0
jmp 0x47b9e6
push esi
call fcn.004796e0
mov edi, eax
add esp, 4
mov dword [ebp - 0x10], edi
test edi, edi
jne case.0x47adf6.1
push 2
lea eax, [ebp - 0x50]
push esi
push eax
call fcn.00498420
mov ebx, dword [ebp + 0xc]
add esp, 0xc
movups xmm0, xmmword [eax]
movups xmmword [ebx], xmm0
mov eax, dword [esi + 0x1e0]
test eax, eax
je 0x47ae83
push 0xa
push edi
push eax
push esi
call fcn.00479210
add esp, 0x10
mov eax, dword [esi + 0x1e4]
test eax, eax
je 0x47ae9b
push 2
push 0
push eax
push esi
call fcn.00479210
add esp, 0x10
lea eax, [ebp - 1]
push eax
lea eax, [ebp - 5]
push eax
push esi
call fcn.00483b30
mov edi, eax
add esp, 0xc
mov dword [ebp - 0x10], edi
cmp edi, 0x59
jne 0x47aee8
push 1
push esi
call fcn.0047a690
mov ebx, dword [ebp + 8]
lea eax, [esi + 0x1c]
push eax
push esi
push dword [ebx + 0x28]
lea eax, [ebx + 0x24]
push eax
call fcn.0048dea0
push esi
push ebx
call fcn.0047cde0
add esp, 0x20
xor edi, edi
mov dword [ebp - 0x10], edi
mov ecx, edi
jmp 0x47b9e6
cmp byte [esi + 0xd98], 0
je 0x47af07
push str.Transfer_was_pending__now_try_another
push esi
call fcn.00488e60
push dword [esi + 0x7c]
call fcn.0047c5d0
add esp, 0xc
test edi, edi
jne case.0x47adf6.1
push 3
lea eax, [ebp - 0x60]
push esi
push eax
call fcn.00498420
add esp, 0xc
cmp byte [ebp - 5], 0
movups xmm0, xmmword [eax]
movups xmmword [ebx], xmm0
je 0x47af31
push 3
jmp 0x47b9da
or eax, 0xffffffff
cmp byte [ebp - 1], 0
mov dword [ebp - 0xc], eax
je 0x47af44
push 6
jmp 0x47b9da
push 4
jmp 0x47b9da
mov eax, dword [ebx]
mov dword [ebp - 0x14], 0
cmp byte [eax + 0x1a8], 0
je 0x47af62
mov ebx, dword [eax + 0x78]
jmp 0x47af73
cmp byte [eax + 0x1b1], 0
je 0x47af70
mov ebx, dword [eax + 0x48]
jmp 0x47af73
mov ebx, dword [eax + 0x30]
push dword [eax + 0x2fc]
push ebx
push esi
call fcn.0048e5c0
add esp, 0xc
mov dword [ebp - 0x14], eax
test eax, eax
je 0x47afb2
push ebx
push 0x578894
xor edi, edi
mov dword [esi + 0x9ac], eax
push esi
mov byte [esi + 0x9c0], 1
mov dword [ebp - 0x10], edi
call fcn.00488e60
mov eax, dword [ebp - 0x14]
add esp, 0xc
test eax, eax
jne 0x47afc4
lea eax, [ebp - 0x14]
push eax
push esi
call fcn.0048f020
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
mov ebx, dword [ebp + 8]
push esi
push ebx
call fcn.0047ca70
mov ecx, eax
add esp, 8
mov dword [ebp - 0xc], ecx
test ecx, ecx
jne 0x47bb20
cmp dword [ebp - 0x14], eax
je 0x47b020
lea eax, [ebp - 1]
push eax
push esi
call fcn.0048ec80
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
je 0x47b002
mov dword [esi + 0x18], 0
jmp 0x47b01d
or eax, 0xffffffff
cmp byte [ebp - 1], 0
mov dword [ebp - 0xc], eax
je 0x47b012
push 6
jmp 0x47b014
push 4
push esi
call fcn.0047a690
add esp, 8
mov ecx, dword [ebp - 0xc]
test edi, edi
je 0x47b9e6
mov byte [ebp + 0x13], 1
jmp 0x47b9e6
lea eax, [ebp - 2]
push eax
push esi
call fcn.004904c0
mov edi, eax
add esp, 8
mov eax, dword [ebx]
mov dword [ebp - 0x10], edi
cmp byte [eax + 0x1ac], 0
je 0x47b074
xor edi, edi
or eax, 0xffffffff
push edi
push edi
push esi
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x10], edi
call fcn.0047a800
push 2
push esi
call fcn.0047a690
add esp, 0x14
or ecx, 0xffffffff
jmp 0x47b9e6
test edi, edi
jne 0x47b0e4
or eax, 0xffffffff
push 6
push esi
mov dword [ebp - 0xc], eax
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
jmp 0x47b9e6
lea eax, [ebp - 1]
push eax
push 0
push 0
push esi
call fcn.004884c0
add esp, 0x10
mov edi, eax
cmp byte [ebp - 1], 0
mov dword [ebp - 0x10], edi
je 0x47b0ca
test edi, edi
jne 0x47b0d2
or eax, 0xffffffff
push 6
push esi
mov dword [ebp - 0xc], eax
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
jmp 0x47b9e6
test edi, edi
je case.0x47adf6.1
push esi
call fcn.00496e10
push 1
push edi
push esi
call fcn.0047a800
add esp, 0x10
mov byte [ebp + 0x13], 1
jmp case.0x47adf6.1
cmp byte [esi + 0xd9f], 0
je 0x47b104
push esi
call fcn.0047c790
mov edi, eax
add esp, 4
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b0d2
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1af], 0
je 0x47b12a
push 8
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
lea eax, [ebp - 2]
push eax
push esi
call fcn.0047c620
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b0d2
cmp byte [ebp - 2], al
jne 0x47b114
push 7
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
lea eax, [ebp - 2]
push eax
push esi
call fcn.0047c6c0
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b0d2
cmp byte [ebp - 2], al
je case.0x47adf6.1
jmp 0x47b114
cmp dword [esi + 0x1bc], 0
je 0x47b1f8
push 1
push esi
call fcn.00479720
push dword [esi + 0xe5c]
lea eax, [esi + 0xe2c]
push dword [esi + 0xe24]
push eax
lea eax, [esi + 0xdf4]
push eax
push dword [esi + 0x1c0]
mov eax, dword [esi + 0x1bc]
call eax
push 0
push esi
mov edi, eax
call fcn.00479720
add esp, 0x24
test edi, edi
je 0x47b1f8
push str.operation_aborted_by_pre_request_callback
push esi
call fcn.00488da0
mov edi, 0x2a
push esi
mov dword [ebp - 0x10], edi
call fcn.00496e10
push 0
push edi
push esi
call fcn.0047a800
add esp, 0x18
mov byte [ebp + 0x13], 1
jmp case.0x47adf6.1
cmp byte [esi + 0x6a5], 1
jne 0x47b226
push 0
push dword [esi + 0x18]
call fcn.0048a2e0
push 0xe
push esi
call fcn.0047a690
xor edi, edi
add esp, 0x10
or ecx, 0xffffffff
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
lea eax, [ebp - 3]
push eax
push esi
call fcn.0047a7b0
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b2c6
cmp byte [ebp - 3], al
jne 0x47b298
cmp byte [esi + 0xd92], al
je 0x47b287
mov eax, dword [esi + 0xda8]
mov al, byte [eax + 0x20]
cmp al, 7
je 0x47b25e
cmp al, 5
jne 0x47b287
push 0
push 0
push esi
call fcn.0047a800
mov eax, dword [esi + 0x18]
neg eax
sbb eax, eax
add eax, 0xf
push eax
push esi
call fcn.0047a690
add esp, 0x14
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
mov eax, 9
push eax
jmp 0x47b9da
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1b5], 0
je 0x47b2b5
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
mov eax, 0xa
push eax
jmp 0x47b9da
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
mov eax, 0xb
push eax
jmp 0x47b9da
cmp edi, 0x37
jne 0x47b381
mov eax, dword [esi + 0x18]
cmp byte [eax + 0x1af], 0
je 0x47b381
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
push esi
call fcn.00497520
add esp, 8
test eax, eax
je 0x47b300
mov edi, eax
mov byte [ebp + 0x13], 1
mov dword [ebp - 0x10], edi
push esi
call fcn.00496e10
push 0
push edi
push esi
call fcn.0047a800
mov ecx, dword [ebp - 0x14]
add esp, 0x10
test ecx, ecx
je 0x47b36e
test eax, eax
je 0x47b336
cmp eax, 0x37
je 0x47b336
mov edi, eax
push ecx
mov dword [ebp - 0x10], edi
call dword [0x5a0350]
add esp, 4
jmp case.0x47adf6.1
push 2
push ecx
push esi
call fcn.00496840
mov edi, eax
add esp, 0xc
test edi, edi
jne 0x47b359
push 2
push esi
call fcn.0047a690
add esp, 8
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x14]
push ecx
mov dword [ebp - 0x10], edi
call dword [0x5a0350]
add esp, 4
jmp case.0x47adf6.1
push ecx
mov byte [ebp + 0x13], 1
call dword [0x5a0350]
add esp, 4
jmp case.0x47adf6.1
push esi
call fcn.00496e10
add esp, 4
cmp dword [esi + 0x18], 0
je 0x47b39c
push 0
push edi
push esi
call fcn.0047a800
add esp, 0xc
mov byte [ebp + 0x13], 1
jmp case.0x47adf6.1
lea eax, [ebp - 3]
push eax
push esi
call fcn.0047c700
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b3ea
cmp byte [ebp - 3], al
je case.0x47adf6.1
mov eax, dword [esi + 0x18]
xor ecx, ecx
cmp byte [eax + 0x1b5], cl
sete cl
add ecx, 0xa
push ecx
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
push esi
call fcn.00496e10
push 0
push edi
push esi
call fcn.0047a800
add esp, 0x10
mov byte [ebp + 0x13], 1
jmp case.0x47adf6.1
lea eax, [ebp - 0x30]
push eax
push esi
call fcn.0047a7d0
mov edi, eax
add esp, 8
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b3ea
mov ecx, dword [ebp - 0x30]
test ecx, ecx
je case.0x47adf6.1
cmp ecx, 1
sete al
lea eax, [eax*2 + 9]
push eax
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
mov eax, dword [ebx]
cmp byte [eax + 0x1bf], 0
je 0x47b462
mov ebx, dword [ebp + 8]
push ebx
call fcn.0047c5d0
add esp, 4
lea ebx, [esi + 0x18]
mov eax, dword [ebx]
cmp dword [eax + 0x1e0], 0xffffffff
jne 0x47b49f
cmp dword [eax + 0x1e4], 0xffffffff
jne 0x47b49f
cmp byte [esi + 0xd92], 0
je 0x47b498
mov eax, dword [eax + 0x1c8]
test dword [eax + 0x4c], 0x1000
jne 0x47b498
mov eax, dword [esi + 0xda8]
mov byte [eax + 0x20], 7
mov eax, 0xe
jmp 0x47b4a4
mov eax, 0xc
push eax
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
push esi
call fcn.004985d0
add esp, 4
test eax, eax
je 0x47b4d2
mov ebx, 0x2a
mov edi, ebx
mov dword [ebp - 0x10], edi
jmp 0x47b4f4
mov ecx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00499910
mov edi, eax
add esp, 0x14
mov dword [ebp - 0x10], edi
mov ebx, edi
test edi, edi
je 0x47b52a
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x1c8]
test byte [eax + 0x4c], 2
jne 0x47b513
cmp ebx, 0x5c
je 0x47b513
push 2
push ecx
call fcn.0048a2e0
add esp, 8
push esi
call fcn.00496e10
push 1
push ebx
push esi
call fcn.0047a800
add esp, 0x10
jmp case.0x47adf6.1
mov edx, dword [esi + 0x210]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x214]
mov eax, edx
or eax, ecx
movlpd qword [ebp - 0x2c], xmm0
je 0x47b58a
mov ebx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebx]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7b8]
push ecx
push edx
push dword [esi + 0x7cc]
movups xmmword [eax], xmm0
push dword [esi + 0x7c8]
push dword [esi + 0x714]
push dword [esi + 0x710]
call fcn.00498180
add esp, 0x38
mov dword [ebp - 0x18], edx
mov ebx, eax
jmp 0x47b593
mov eax, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x2c]
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x218]
xorps xmm0, xmm0
mov ecx, dword [esi + 0x21c]
or eax, ecx
movlpd qword [ebp - 0x24], xmm0
je 0x47b5f4
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x218]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7d0]
push ecx
push edx
push dword [esi + 0x7e4]
movups xmmword [eax], xmm0
push dword [esi + 0x7e0]
push dword [esi + 0x70c]
push dword [esi + 0x708]
call fcn.00498180
add esp, 0x38
mov ecx, eax
jmp 0x47b5fa
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov eax, ebx
or eax, dword [ebp - 0x18]
jne 0x47b62b
mov eax, ecx
or eax, edx
jne 0x47b62b
push 0xc
push esi
call fcn.0047a690
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00498760
add esp, 0x14
jmp case.0x47adf6.1
mov eax, dword [ebp - 0x18]
cmp eax, edx
jl 0x47b64a
jg 0x47b638
cmp ebx, ecx
jb 0x47b64a
push 0xb
push eax
push ebx
push esi
call fcn.00479210
add esp, 0x10
jmp case.0x47adf6.1
push 0xb
push edx
push ecx
push esi
call fcn.00479210
add esp, 0x10
jmp case.0x47adf6.1
mov eax, dword [esi + 0x210]
xor bl, bl
mov ecx, dword [esi + 0x214]
xorps xmm0, xmm0
or eax, ecx
mov dword [ebp - 0x14], 0
movlpd qword [ebp - 0x2c], xmm0
je 0x47b6c7
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x210]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7b8]
push ecx
push edx
push dword [esi + 0x7cc]
movups xmmword [eax], xmm0
push dword [esi + 0x7c8]
push dword [esi + 0x714]
push dword [esi + 0x710]
call fcn.00498180
add esp, 0x38
mov dword [ebp - 0x1c], edx
jmp 0x47b6d0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x2c]
mov ecx, dword [esi + 0x21c]
xorps xmm0, xmm0
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x218]
or eax, ecx
movlpd qword [ebp - 0x24], xmm0
je 0x47b737
mov edx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [edx]
mov edx, dword [esi + 0x218]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [esi + 0x7d0]
push ecx
push edx
push dword [esi + 0x7e4]
movups xmmword [eax], xmm0
push dword [esi + 0x7e0]
push dword [esi + 0x70c]
push dword [esi + 0x708]
call fcn.00498180
add esp, 0x38
mov dword [ebp - 0x20], eax
mov ecx, eax
jmp 0x47b740
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x18]
or eax, dword [ebp - 0x1c]
mov dword [ebp - 0x28], edx
jne 0x47b930
mov eax, ecx
or eax, edx
jne 0x47b930
lea eax, [ebp - 4]
push eax
push esi
call fcn.004971c0
mov edi, eax
add esp, 8
mov al, byte [ebp - 4]
mov dword [ebp - 0x10], edi
test al, al
jne 0x47b787
cmp edi, 0x38
je 0x47b787
mov ecx, edi
cmp edi, 0x5c
jne 0x47b864
jmp 0x47b86c
lea eax, [ebp - 0x14]
push eax
push esi
call fcn.00497520
add esp, 8
mov ecx, edi
test eax, eax
jne 0x47b852
cmp dword [ebp - 0x14], eax
setne bl
test bl, bl
je 0x47b861
xor edi, edi
mov al, 1
mov dword [ebp - 0x10], edi
mov byte [ebp - 4], al
test al, al
je 0x47b90f
push esi
call fcn.00496e10
add esp, 4
test bl, bl
jne 0x47b8c8
cmp dword [esi + 0x110], 0
jne 0x47b8a2
cmp dword [esi + 0x10c], 0
je 0x47b834
push dword [ebp - 0x14]
call dword [0x5a0350]
mov eax, dword [esi + 0x10c]
push 1
push eax
push esi
mov dword [ebp - 0x14], eax
mov dword [esi + 0x10c], 0
call fcn.00496840
push dword [ebp - 0x14]
mov edi, eax
mov dword [ebp - 0x10], edi
call dword [0x5a0350]
add esp, 0x14
test edi, edi
je 0x47b83c
push 1
push edi
push esi
mov byte [ebp + 0x13], 1
call fcn.0047a800
mov edi, eax
add esp, 0xc
mov dword [ebp - 0x10], edi
test edi, edi
jne case.0x47adf6.1
push 0xe
push esi
call fcn.0047a690
add esp, 8
or ecx, 0xffffffff
mov dword [ebp - 0xc], ecx
jmp 0x47b9e6
test edi, edi
jne 0x47b7a4
mov edi, eax
mov dword [ebp - 0x10], edi
jmp 0x47b86c
mov al, byte [ebp - 4]
test ecx, ecx
je 0x47b7b6
mov ecx, dword [esi + 0x18]
mov eax, dword [ecx + 0x1c8]
test byte [eax + 0x4c], 2
jne 0x47b88b
cmp edi, 0x5c
je 0x47b88b
push 2
push ecx
call fcn.0048a2e0
add esp, 8
push esi
call fcn.00496e10
push 1
push edi
push esi
call fcn.0047a800
add esp, 0x10
jmp case.0x47adf6.1
push dword [ebp - 0x14]
call dword [0x5a0350]
mov eax, dword [esi + 0x110]
add esp, 4
mov dword [ebp - 0x14], eax
mov edi, 3
mov dword [esi + 0x110], 0
jmp 0x47b8cd
mov edi, 2
push 0
push 0
push esi
call fcn.0047a800
push edi
push dword [ebp - 0x14]
push esi
call fcn.00496840
mov edi, eax
add esp, 0x18
mov dword [ebp - 0x10], edi
test edi, edi
jne 0x47b8fe
push 2
push esi
call fcn.0047a690
add esp, 8
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
push dword [ebp - 0x14]
call dword [0x5a0350]
add esp, 4
jmp case.0x47adf6.1
cmp byte [esi + 0xd8b], 0
je case.0x47adf6.1
push 8
push 0
push 0
push esi
call fcn.00479210
add esp, 0x10
jmp case.0x47adf6.1
mov ecx, dword [ebp + 0xc]
sub esp, 0x10
mov eax, esp
movups xmm0, xmmword [ecx]
push esi
movups xmmword [eax], xmm0
call fcn.00498760
push 0xd
push esi
call fcn.0047a690
mov ecx, dword [ebp - 0x1c]
add esp, 0x1c
mov ebx, dword [ebp - 0x28]
cmp ecx, ebx
jl 0x47b974
mov eax, dword [ebp - 0x18]
jg 0x47b97b
mov edx, dword [ebp - 0x20]
cmp eax, edx
jb 0x47b977
push 0xb
push ecx
push eax
push esi
call fcn.00479210
add esp, 0x10
jmp case.0x47adf6.1
mov edx, dword [ebp - 0x20]
mov eax, edx
mov ecx, ebx
push 0xb
push ecx
push eax
push esi
call fcn.00479210
add esp, 0x10
jmp case.0x47adf6.1
or eax, 0xffffffff
mov dword [ebp - 0xc], eax
mov eax, dword [ebx]
test eax, eax
je 0x47b9bf
cmp byte [eax + 0x1bf], 0
je 0x47b9ab
mov ebx, dword [ebp + 8]
push ebx
call fcn.0047c5d0
add esp, 4
push 0
push edi
push esi
call fcn.0047a800
add esp, 0xc
test edi, edi
cmove edi, eax
mov dword [ebp - 0x10], edi
cmp byte [esi + 0xd92], 0
je 0x47b9d8
mov eax, dword [esi + 0xda8]
cmp byte [eax + 0x20], 7
je 0x47b9d8
push 0
jmp 0x47b9da
push 0xf
push esi
call fcn.0047a690
add esp, 8
mov ecx, dword [ebp - 0xc]
cmp dword [esi + 0x18], 0
lea ebx, [esi + 0x18]
je 0x47ba36
mov eax, dword [esi + 0x34]
lea ebx, [esi + 0x18]
sub eax, 2
cmp eax, 5
ja 0x47ba36
mov edx, dword [ebp + 8]
lea ebx, [esi + 0x18]
cmp ecx, 0xffffffff
je 0x47ba39
push 0
push edx
lea ebx, [esi + 0x18]
call fcn.0047ad00
add esp, 8
test al, al
jne 0x47ba39
push 1
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp + 0x13]
push eax
push dword [ebp + 0xc]
push esi
call fcn.0047aba0
mov edi, dword [ebp - 0x10]
lea ebx, [esi + 0x18]
add esp, 0x14
mov edx, dword [ebp + 8]
cmp dword [esi + 0x34], 0xf
jge 0x47baec
test edi, edi
je 0x47baae
push edx
call fcn.0047c5d0
mov ebx, dword [ebx]
add esp, 4
test ebx, ebx
je 0x47ba8f
cmp byte [ebp + 0x13], 0
je 0x47ba9e
push esi
call fcn.004791d0
push 1
push ebx
push esi
call fcn.00482330
cmp edi, 0x1c
sete al
movzx eax, al
push eax
push ebx
push esi
call fcn.00483c10
add esp, 0x1c
push 0xf
push esi
call fcn.0047a690
add esp, 8
or edx, 0xffffffff
jmp 0x47baef
cmp dword [esi + 0x34], 2
jne 0x47ba9e
push esi
call fcn.00496e10
add esp, 4
push 0xf
push esi
call fcn.0047a690
add esp, 8
or edx, 0xffffffff
jmp 0x47baef
cmp dword [ebx], 0
je 0x47baec
push esi
call fcn.004985d0
add esp, 4
test eax, eax
je 0x47baec
push 2
push dword [ebx]
mov edi, 0x2a
mov dword [ebp - 0x10], edi
call fcn.0048a2e0
xor eax, eax
cmp dword [esi + 0x34], 0xe
setge al
add eax, 0xe
push eax
push esi
call fcn.0047a690
add esp, 0x10
or edx, 0xffffffff
jmp 0x47baef
mov edx, dword [ebp - 0xc]
cmp dword [esi + 0x34], 0xf
je 0x47bb29
mov ebx, dword [ebp + 8]
cmp edx, 0xffffffff
je 0x47ad80
push 0
push ebx
call fcn.0047ad00
add esp, 8
test al, al
jne 0x47ad80
mov dword [esi + 0x38], edi
mov eax, edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x680]
test eax, eax
je 0x47bb3c
push edi
push esi
call eax
mov ebx, dword [ebp + 8]
jmp 0x47bb56
mov ebx, dword [ebp + 8]
lea eax, [esi + 0x3c]
push eax
push ebx
mov dword [eax + 0xc], 1
mov dword [eax + 0x10], esi
mov dword [eax + 0x14], edi
call fcn.0047a6c0
add esp, 8
push 0x10
push esi
call fcn.0047a690
lea eax, [esi + 0x1c]
push eax
push esi
push dword [ebx + 0x38]
lea eax, [ebx + 0x34]
push eax
call fcn.0048dea0
push esi
push ebx
call fcn.0047cde0
add esp, 0x20
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 2
pop ebx
mov esp, ebp
pop ebp
ret