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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
mov esi, esp
call fcn.004f1110
mov dl, 1
mov edi, 0
call fcn.004f1120
mov dword [esi + 0xcc], eax
mov eax, dword [0x88c654]
add edi, 0xffffffff
add edi, 0
mov dword [esi + 0xc8], eax
mov eax, ebx
sub eax, 0x22ac6a42
add eax, edi
add eax, 0x22ac6a42
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete dh
mov eax, dword [esi + 0xc8]
cmp eax, 0xa
setl al
mov ah, dh
xor ah, 1
and ah, 1
mov bl, dl
xor bl, 1
mov bh, dh
and bh, bl
or ah, bh
mov bl, al
xor bl, 1
and bl, 1
mov bh, dl
xor bh, 1
mov byte [esi + 0xc7], al
and al, bh
or bl, al
mov al, dl
xor al, 1
and al, 1
mov bh, dl
xor bh, 1
and bh, 1
or al, bh
mov bh, ah
xor bh, 1
mov byte [esi + 0xc6], al
mov al, dl
xor al, 1
mov byte [esi + 0xc5], al
mov al, dl
xor al, 1
mov byte [esi + 0xc4], al
mov al, byte [esi + 0xc5]
or bh, al
mov al, byte [esi + 0xc4]
or al, 1
xor bh, 1
and bh, al
xor dh, 1
mov al, byte [esi + 0xc6]
xor al, 1
mov byte [esi + 0xc3], al
mov al, dl
xor al, 1
mov byte [esi + 0xc2], al
mov al, byte [esi + 0xc3]
or dh, al
mov al, byte [esi + 0xc2]
or al, 1
xor dh, 1
and dh, al
mov al, dl
xor al, 1
mov byte [esi + 0xc1], al
mov al, bl
call fcn.004f1130
mov cl, byte [esi + 0xc1]
xor al, cl
and al, bl
mov cl, byte [esi + 0xc7]
xor cl, 1
mov ch, byte [esi + 0xc6]
xor ch, 1
mov byte [esi + 0xbb], al
mov al, dl
xor al, 1
or cl, ch
or al, 1
xor cl, 1
and cl, al
mov al, bh
xor al, 1
mov ch, dh
xor ch, 1
mov byte [esi + 0xba], al
mov al, dl
xor al, 1
mov byte [esi + 0xb9], al
mov al, byte [esi + 0xba]
and al, 1
mov byte [esi + 0xb8], al
mov al, byte [esi + 0xb9]
and bh, al
mov al, ch
and al, 1
mov byte [esi + 0xb7], al
mov al, byte [esi + 0xb9]
and dh, al
mov al, byte [esi + 0xb8]
or al, bh
mov bh, byte [esi + 0xb7]
or bh, dh
xor al, bh
mov dh, byte [esi + 0xba]
or dh, ch
xor dh, 1
mov ch, byte [esi + 0xb9]
or ch, 1
and dh, ch
or al, dh
mov ch, byte [esi + 0xbb]
and ch, cl
mov dh, byte [esi + 0xbb]
xor dh, cl
or ch, dh
mov cl, al
xor cl, 1
and cl, 0
mov dh, dl
xor dh, 0
and al, dh
mov bh, ch
xor bh, 1
and bh, 0
and ch, dh
or cl, al
or bh, ch
xor cl, bh
mov al, ah
and al, bl
xor ah, bl
or al, ah
mov ah, al
xor ah, 1
and ah, 1
mov ch, dl
xor ch, 1
and al, ch
xor dl, 1
and dl, 1
and ch, 1
or ah, al
or dl, ch
xor ah, dl
mov al, byte [esi + 0xc6]
and al, 1
mov dl, byte [esi + 0xc6]
xor dl, 1
or al, dl
xor al, 1
mov dl, ah
xor dl, al
and dl, ah
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x4f0672
jmp 0x4f0fca
lea eax, [0x592090]
mov ecx, 0x5b9464
mov ecx, dword [ecx]
mov dword [esi + 0xb0], eax
mov eax, ecx
mov dword [esi + 0xac], ecx
call fcn.00437f10
mov eax, esp
mov ecx, dword [esi + 0xac]
call fcn.004f1140
mov eax, ecx
call fcn.00437f10
mov eax, esp
mov ecx, 8
call fcn.004f1150
mov eax, 0x4374a4
mov eax, ecx
call fcn.00437f10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, 0x18
call fcn.004f1160
mov eax, ecx
call fcn.00437f10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0xac]
mov dword [esi + 0x9c], eax
mov eax, ecx
call fcn.00437f10
mov eax, esp
mov ecx, dword [esi + 0xac]
call fcn.004f1170
mov eax, ecx
call fcn.00437f10
mov eax, esp
mov ecx, dword [esi + 0xac]
call fcn.004f1180
mov eax, 0x4374ec
mov eax, ecx
call fcn.00437f10
mov edx, 0x200
mov eax, esp
mov ecx, dword [esi + 0xa8]
mov edx, dword [esi + 0xcc]
mov dword [ecx], edx
mov edi, dword [esi + 0xa4]
mov ebx, dword [esi + 0xbc]
mov dword [edi], ebx
mov ecx, dword [edi]
mov edx, ecx
add edx, 0x358
call fcn.004f1190
call fcn.004f11a0
sub esp, 8
mov ebx, dword [esi + 0x9c]
mov dword [esp], ebx
mov ebx, dword [esi + 0xb0]
mov dword [esp + 4], ebx
mov dword [esi + 0x90], eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x88], edx
mov dword [esi + 0x84], edi
call fcn.004e59a0
add esp, 8
mov al, 1
mov ecx, 0
call fcn.004f11b0
mov edi, dword [0x88c654]
add ecx, 0x9bc953ba
sub ecx, 1
add ecx, 0x6436ac46
mov ebx, edx
add ebx, 0x8d5578fe
add ebx, ecx
sub ebx, 0x8d5578fe
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, cl
xor ch, 1
mov dl, ah
xor dl, ch
and dl, ah
mov ch, ah
xor ch, 1
and ch, 0
mov dh, al
xor dh, 0
and ah, dh
mov bl, cl
xor bl, 1
and bl, 0
and cl, dh
or ch, ah
or bl, cl
xor ch, bl
mov cl, dl
xor cl, 1
mov ah, ch
xor ah, 1
xor al, 1
mov dh, cl
and dh, 1
and dl, al
mov bl, ah
and bl, 1
and ch, al
or dh, dl
or bl, ch
xor dh, bl
or cl, ah
xor cl, 1
or al, 1
and cl, al
or dh, cl
test dh, 1
jne 0x4f083c
jmp 0x4f0fca
sub esp, 0xc
mov eax, esp
call fcn.004f11c0
mov dword [eax + 8], ecx
call fcn.004f11d0
call fcn.004f11e0
mov edi, dword [esi + 0xa0]
mov dword [eax], edi
mov ecx, dword [esi + 0x8c]
call fcn.004c34e0
call fcn.004f11f0
mov ecx, dword [eax]
mov edx, dword [esi + 0x88]
call fcn.004f1200
mov ecx, dword [eax + 4]
call fcn.004f1210
mov ecx, edx
call fcn.004d6190
mov byte [esi + 0x83], al
mov ecx, dword [esi + 0x9c]
call fcn.00551e20
mov al, byte [esi + 0x83]
test al, 1
jne 0x4f08ab
jmp 0x4f0fc0
mov eax, dword [esi + 0x90]
mov dword [eax], 0
mov eax, dword [esi + 0x90]
cmp dword [eax], 9
jae 0x4f0cb5
mov al, 1
mov ecx, 0x29dcffaa
mov edx, dword [0x88c650]
mov edi, dword [0x88c654]
add ecx, 0
add ecx, 0xffffffff
sub ecx, 0x29dcffaa
mov ebx, esi
mov ebx, edx
sub ebx, 0xd6c34b12
add ebx, ecx
add ebx, 0xd6c34b12
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
push edx
mov edx, 0xcbc0c6e9
xor edx, 0xcbc0c6e3
cmp edi, edx
pop edx
setl cl
mov ch, cl
xor ch, 1
mov dl, ah
xor dl, ch
and dl, ah
mov ch, ah
xor ch, 1
mov dh, cl
and dh, ch
xor cl, 1
and ah, cl
or dh, ah
mov cl, dl
xor cl, 1
mov ah, dh
xor ah, 1
xor al, 1
mov ch, cl
and ch, 1
and dl, al
mov bl, ah
and bl, 1
and dh, al
or ch, dl
or bl, dh
xor ch, bl
or cl, ah
xor cl, 1
or al, 1
and cl, al
or ch, cl
test ch, 1
jne 0x4f0978
jmp 0x4f1053
mov eax, 0
mov ecx, 0x5556d6b8
mov edx, dword [esi + 0x90]
mov edi, dword [edx]
mov edi, dword [edi*8 + 0x872024]
call fcn.004f1220
mov edx, dword [ebx + 0x358]
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0x5556d6b8
mov dword [esp + 0x10], 0
mov dword [esi + 0x7c], eax
mov dword [esi + 0x78], ecx
call fcn.004d73d0
add esp, 0x14
mov cl, 1
mov edx, 0
mov edi, dword [esi + 0x90]
mov ebx, dword [edi]
call fcn.004f1230
mov edi, dword [esi + 0x8c]
add edi, 0xae920977
sub edi, 0x371c8b70
add edi, 0x516df689
mov dword [esi + 0x74], eax
mov eax, edx
sub eax, edi
mov edi, edx
sub edi, ebx
add eax, edi
mov edi, edx
sub edi, eax
add edi, 0x5ca2d6f2
add edi, 0x371c8b70
sub edi, 0x5ca2d6f2
mov eax, dword [esi + 0x74]
call fcn.004f1240
mov eax, dword [0x88c650]
mov edi, dword [0x88c654]
mov ebx, edx
mov ebx, eax
sub ebx, 0xa4f4882d
sub ebx, 0x692cd
sub ebx, 0x5b0b77d3
add ebx, 0x4b789c0e
sub ebx, 1
add ebx, 0xb48763f2
sub edx, 0x692cd
sub ebx, edx
imul eax, ebx
and eax, 1
cmp eax, 0
sete ch
cmp edi, 0xa
setl al
mov ah, ch
xor ah, 1
and ah, 1
mov dl, cl
xor dl, 1
mov dh, ch
and dh, dl
mov bl, cl
xor bl, 1
and bl, 1
and dl, 1
or ah, dh
or bl, dl
xor ah, bl
mov dl, al
xor dl, 1
and dl, 1
mov dh, cl
xor dh, 1
mov bl, al
and bl, dh
mov bh, cl
xor bh, 1
and bh, 1
and dh, 1
or dl, bl
or bh, dh
xor dl, bh
mov dh, cl
xor dh, 0
and dh, 0
mov bl, cl
xor bl, 0
mov bh, bl
and bh, 0
mov byte [esi + 0x73], al
mov al, cl
xor al, 1
and al, 0
and bl, 1
or dh, bh
or al, bl
xor dh, al
mov al, ah
xor al, 1
mov bl, cl
xor bl, 0
mov bh, cl
xor bh, 1
or al, bl
or bh, 1
xor al, 1
and al, bh
xor ch, 1
mov bl, dh
xor bl, 1
mov bh, cl
xor bh, 0
or ch, bl
or bh, 0
xor ch, 1
and ch, bh
mov bl, cl
xor bl, 0
mov bh, dl
xor bh, bl
and bh, dl
mov bl, dh
xor bl, 1
mov byte [esi + 0x72], al
mov al, byte [esi + 0x73]
xor al, bl
mov bl, byte [esi + 0x73]
and al, bl
mov bl, byte [esi + 0x72]
xor bl, 1
mov byte [esi + 0x71], al
mov al, ch
xor al, 1
mov byte [esi + 0x70], al
mov al, cl
xor al, 1
mov byte [esi + 0x6f], al
mov al, bl
and al, 1
mov byte [esi + 0x6e], al
mov al, byte [esi + 0x72]
mov byte [esi + 0x6d], cl
mov cl, byte [esi + 0x6f]
and al, cl
mov cl, byte [esi + 0x70]
and cl, 1
mov byte [esi + 0x6c], al
mov al, byte [esi + 0x6f]
and ch, al
mov al, byte [esi + 0x6e]
mov byte [esi + 0x6b], cl
mov cl, byte [esi + 0x6c]
or al, cl
mov cl, byte [esi + 0x6b]
or cl, ch
xor al, cl
mov cl, byte [esi + 0x70]
or bl, cl
xor bl, 1
mov ch, byte [esi + 0x6f]
or ch, 1
and bl, ch
or al, bl
mov ch, bh
mov bl, byte [esi + 0x71]
and ch, bl
xor bh, bl
or ch, bh
mov bh, al
xor bh, 1
mov cl, ch
and cl, bh
xor ch, 1
and al, ch
or cl, al
mov al, ah
xor al, 1
mov ch, dl
xor ch, 1
mov bh, byte [esi + 0x6d]
xor bh, 0
mov bl, al
and bl, 0
and ah, bh
mov byte [esi + 0x6a], al
mov al, ch
and al, 0
and dl, bh
or bl, ah
or al, dl
xor bl, al
mov al, byte [esi + 0x6a]
or al, ch
xor al, 1
or bh, 0
and al, bh
or bl, al
mov al, bl
xor al, 1
and al, 1
mov dl, byte [esi + 0x6d]
xor dl, 1
and bl, dl
or al, bl
mov dl, byte [esi + 0x6d]
xor dl, 0
mov ah, dh
xor ah, 1
mov ch, byte [esi + 0x6d]
xor ch, 0
mov bl, dl
and bl, 0
mov bh, ch
and bh, 0
mov byte [esi + 0x69], al
mov al, ah
and al, 0
and dh, ch
or bl, bh
or al, dh
xor bl, al
or dl, ah
xor dl, 1
or ch, 0
and dl, ch
or bl, dl
mov al, byte [esi + 0x69]
xor al, 1
xor bl, 1
mov dl, byte [esi + 0x6d]
xor dl, 0
or al, bl
or dl, 0
xor al, 1
and al, dl
mov dl, cl
xor dl, 1
mov ah, al
xor ah, 1
mov ch, byte [esi + 0x6d]
xor ch, 0
mov dh, dl
and dh, 0
and cl, ch
mov bl, ah
and bl, 0
and al, ch
or dh, cl
or bl, al
xor dh, bl
or dl, ah
xor dl, 1
or ch, 0
and dl, ch
or dh, dl
test dh, 1
jne 0x4f0c6e
jmp 0x4f1053
jmp 0x4f0c73
mov eax, 0
mov ecx, dword [esi + 0x90]
call fcn.004f1250
sub edx, 0xcc96888e
sub edx, 0x7f23f652
add edx, 0xcc96888e
add edx, 0x36068f3e
sub edx, 0xffffffff
sub edx, 0x36068f3e
sub eax, 0x7f23f652
sub edx, eax
mov dword [ecx], edx
jmp 0x4f08b7
mov eax, 0xffffffff
mov ecx, dword [esi + 0x8c]
mov edx, dword [ecx + 4]
mov edi, edx
xor edi, 0xffffffff
and edi, 0x93cf2aec
mov ebx, eax
xor ebx, 0x93cf2aec
mov ecx, edx
and ecx, ebx
mov dword [esi + 0x64], eax
xor eax, 0xffffffff
and eax, 0x93cf2aec
and ebx, 0xffffffff
or edi, ecx
or eax, ebx
xor edi, eax
mov eax, dword [esi + 0x64]
xor eax, 8
and eax, 0xffffffff
call fcn.004f1260
xor ecx, 0xffffffff
and ecx, 8
or eax, ecx
mov ecx, dword [esi + 0x64]
xor ecx, 0x6f24363b
and ecx, 0x722a327b
mov ebx, dword [esi + 0x64]
xor ebx, 0x722a327b
call fcn.004f1270
mov eax, 0x4374b0
mov eax, ebx
and eax, 0x6f24363b
mov dword [esi + 0x5c], eax
call fcn.004f1280
xor eax, 0xffffffff
and eax, 0x722a327b
and ebx, 0xffffffff
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x5c]
or ecx, eax
mov eax, dword [esi + 0x58]
or eax, ebx
xor ecx, eax
mov eax, edi
xor eax, 0xffffffff
call fcn.004f1290
xor ebx, 0x6f24363b
call fcn.004f12a0
call fcn.004f12b0
xor eax, 0x80f5dff5
mov dword [esi + 0x50], eax
call fcn.004f12c0
or eax, ebx
mov ebx, dword [esi + 0x50]
or ebx, 0x80f5dff5
push ebx
mov ebx, 0xf3e37fa8
xor ebx, 0xc1c8057
xor eax, ebx
pop ebx
and eax, ebx
xor edx, 0x338d1aa4
xor edx, 0xcc72e55b
mov ebx, ecx
xor ebx, 0xffffffff
mov dword [esi + 0x4c], eax
call fcn.004f12d0
xor eax, 0x1dc5fec3
or edx, ebx
or eax, 0x1dc5fec3
xor edx, 0xffffffff
and edx, eax
call fcn.004f12e0
xor eax, 0x6f24363b
call fcn.004f12f0
xor ebx, eax
mov eax, dword [esi + 0x60]
and ebx, eax
mov eax, ecx
xor eax, 0xffffffff
xor eax, 8
and eax, 8
call fcn.004f1300
mov eax, dword [esi + 0x4c]
and eax, edx
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x4c]
xor eax, edx
mov edx, dword [esi + 0x44]
or edx, eax
mov eax, ebx
xor eax, 0xffffffff
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x48]
xor eax, 0xd657ce64
xor eax, 0x29a8319b
call fcn.004f1310
call fcn.004f1320
xor eax, 0x93f29305
mov dword [esi + 0x38], eax
call fcn.004f1330
and eax, 0x93f29305
call fcn.004f1340
mov eax, dword [esi + 0x38]
and ebx, eax
mov eax, dword [esi + 0x3c]
and eax, 0x93f29305
mov dword [esi + 0x30], eax
call fcn.004f1350
call fcn.004f1360
call fcn.004f1370
and eax, ecx
mov ecx, dword [esi + 0x34]
or ecx, ebx
call fcn.004f1380
or ebx, eax
xor ecx, ebx
call fcn.004f1390
mov ebx, dword [esi + 0x3c]
or eax, ebx
xor eax, 0xffffffff
mov ebx, dword [esi + 0x38]
or ebx, 0x93f29305
and eax, ebx
or ecx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x705f4678
mov ebx, dword [esi + 0x64]
xor ebx, 0x705f4678
and edx, ebx
call fcn.004f13a0
mov eax, ecx
xor eax, 0xffffffff
and eax, 0x705f4678
and ecx, ebx
call fcn.004f13b0
or ebx, edx
or eax, ecx
xor ebx, eax
mov eax, edi
mov ecx, dword [esi + 0x60]
and eax, ecx
xor edi, ecx
or eax, edi
mov edx, eax
mov edx, eax
xor edx, 0xffffffff
and edx, 0xaf512b95
mov edi, dword [esi + 0x64]
xor edi, 0xaf512b95
and eax, edi
mov ecx, dword [esi + 0x64]
xor ecx, 0xffffffff
and ecx, 0xaf512b95
and edi, 0xffffffff
or edx, eax
or ecx, edi
xor edx, ecx
mov eax, dword [esi + 0x2c]
and eax, 0x6f24363b
mov ecx, dword [esi + 0x2c]
xor ecx, 0x6f24363b
or eax, ecx
xor edx, 0xffffffff
xor eax, 0xffffffff
mov ecx, dword [esi + 0x64]
xor ecx, 0x4aa75170
xor ecx, 0x95d5bfb7
or edx, eax
or ecx, 0xdf72eec7
xor edx, 0xffffffff
and edx, ecx
mov eax, ebx
xor eax, 0xffffffff
mov ecx, edx
xor ecx, 0xffffffff
mov edi, dword [esi + 0x64]
push ebx
mov ebx, 0x17cb1d3
xor ebx, 0xcf00777e
xor edi, ebx
pop ebx
call fcn.004f13c0
and eax, 0xce7cc6ad
and ebx, edi
call fcn.004f13d0
mov eax, ecx
and eax, 0xce7cc6ad
and edx, edi
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x20]
or eax, ebx
call fcn.004f13e0
or ebx, edx
xor eax, ebx
mov edx, dword [esi + 0x24]
or edx, ecx
xor edx, 0xca28ebad
xor edx, 0x35d71452
or edi, 0xce7cc6ad
and edx, edi
or eax, edx
call fcn.004f13f0
mov dword [ecx + 4], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
lea eax, [0x592090]
mov ecx, 4
mov dword [esi + 0x18], eax
mov eax, ecx
mov dword [esi + 0x14], ecx
call fcn.00437f10
mov eax, esp
mov ecx, dword [esi + 0x14]
call fcn.004f1400
mov eax, ecx
call fcn.00437f10
mov eax, esp
mov ecx, 0x5b9444
mov ecx, dword [ecx]
mov dword [esi + 0xc], eax
mov eax, ecx
call fcn.00437f10
mov eax, 0x43748c
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov eax, 0x18
call fcn.00437f10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0xcc]
mov dword [ecx], edx
mov edi, dword [esi + 0xc]
mov ebx, dword [esi + 0xbc]
mov dword [edi], ebx
sub esp, 8
mov dword [esp], eax
mov eax, dword [esi + 0x18]
mov dword [esp + 4], eax
call fcn.004e59a0
add esp, 8
jmp 0x4f0672
mov eax, 0
mov ecx, 0x5556d6b8
call fcn.004f1410
call fcn.004f1420
mov edi, dword [edi*8 + 0x872024]
mov ebx, dword [esi + 0x8c]
call fcn.004f1430
sub esp, 0x14
mov dword [esp], edx
mov dword [esp + 4], edi
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0x5556d6b8
mov dword [esp + 0x10], 0
mov dword [esi + 8], eax
call fcn.004f1440
call fcn.004d73d0
add esp, 0x14
mov ecx, 0x65915384
mov edx, 0
mov edi, dword [esi + 0x90]
call fcn.004f1450
mov ebx, dword [ebx*8 + 0x872020]
mov edi, edx
call fcn.004f1460
mov eax, dword [esi + 0x8c]
sub edi, eax
add edi, 0
mov eax, esi
mov eax, edx
sub eax, ebx
sub eax, 0
sub edx, eax
sub edi, edx
add ecx, 0
sub ecx, edi
sub ecx, 0x65915384
mov eax, dword [esi]
mov dword [ecx], eax
jmp 0x4f0978