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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x57c
mov eax, dword [0x48e920]
and eax, 0xb04deec7
mov cx, word [0x4a6b42]
movsx edx, cx
and eax, edx
cmp eax, 0xa1c897c5
jg 0x436c09
mov eax, dword [0x491710]
dec eax
mov dword [0x491710], eax
imul eax, eax, 0xedae58e0
mov ecx, dword [0x483e08]
sub ecx, eax
mov dword [0x483e08], ecx
mov eax, 0x325801
lea ecx, [esp + 0x53c]
mov dword [esp + 0x124], eax
call fcn.0042df90
mov ecx, dword [0x4972b0]
not ecx
add ecx, 0x765d9644
mov dword [0x493688], ecx
mov ecx, dword [0x4963b0]
mov edx, ecx
inc edx
mov dword [0x4963b0], edx
mov edx, dword [0x4813c4]
dec edx
mov dword [0x4813c4], edx
add ecx, edx
mov edx, dword [esp + 0x124]
cmp edx, ecx
mov dword [esp + 0x120], eax
jle 0x436c7d
mov eax, dword [0x497b78]
add eax, 0x37be78c4
mov dword [0x497b78], eax
jmp 0x436c8c
mov eax, dword [0x4993ac]
add eax, 0x1c6a22bf
mov dword [0x4993ac], eax
mov eax, dword [0x489650]
mov ecx, eax
inc ecx
mov dword [0x489650], ecx
mov dx, word [0x49f0c8]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x49f0c8], dx
movsx ecx, dx
and eax, ecx
or eax, 0xd6055261
mov dx, word [0x49f4fe]
mov cx, dx
inc ecx
mov si, cx
mov word [0x49f4fe], si
movsx ecx, dx
mov dx, word [0x4a1be0]
movsx edi, dx
sub ecx, edi
cmp eax, ecx
jl 0x436d00
mov eax, dword [0x4890e0]
sar eax, 4
xor eax, 0x777e16a9
mov ecx, dword [0x48bee0]
and ecx, eax
mov dword [0x48bee0], ecx
mov eax, 0xdffcfebe
mov dword [0x48c1bc], 0x839aeb8b
mov dword [esp + 0x128], 0
mov ecx, dword [0x481a2c]
or ecx, 0x5d93c850
mov dword [0x481a2c], ecx
mov dword [0x4a71b0], 0x94
mov ecx, dword [0x484ec0]
mov edx, dword [0x492544]
and ecx, edx
mov edx, dword [0x48a348]
sar edx, 2
xor ecx, edx
cmp eax, ecx
jg 0x436da5
mov eax, dword [0x4889b4]
dec eax
mov dword [0x4889b4], eax
and eax, 0xdfeb9729
cmp eax, 0xabef6ffe
jge 0x436da0
mov ax, word [0x4a670c]
mov cx, ax
mov edx, dword [0x47f8e4]
shr edx, 0xa
add ecx, edx
xor ecx, 0xacba
mov ax, word [0x4a2090]
mov dx, ax
and edx, ecx
mov ax, dx
mov word [0x4a2090], ax
jmp 0x436df8
mov eax, 0xa5d7e79e
mov ecx, dword [0x493d48]
cmp eax, ecx
jge 0x436df3
mov eax, 0xf01bf098
mov cx, word [0x49cfd6]
mov dx, cx
inc edx
mov si, dx
mov word [0x49cfd6], si
movsx edx, cx
imul edx, edx, 0xe66d3b71
xor edx, 0x2222c278
cmp eax, edx
jg 0x436dee
jmp 0x436dee
jmp 0x436df3
jmp 0x436df8
mov eax, dword [0x47f040]
mov ecx, esp
mov dword [ecx], 0x4a71b0
call eax
sub esp, 4
mov dx, word [0x4a4b32]
movsx ecx, dx
mov esi, dword [0x4819f8]
inc esi
mov dword [0x4819f8], esi
xor ecx, esi
xor ecx, 0xb9a36e17
mov esi, dword [0x480070]
add esi, ecx
mov dword [0x480070], esi
mov dword [esp + 0x11c], eax
call fcn.00412540
mov dword [0x4a79c4], eax
mov eax, dword [0x481128]
xor eax, 0xb068d55f
mov dword [0x481128], eax
call fcn.00413080
mov dword [0x4a79c8], eax
mov dx, word [0x49d598]
movsx eax, dx
shr eax, 1
mov dx, word [0x4a6ff0]
mov cx, dx
and eax, ecx
and eax, 0xfb40
mov dx, ax
mov word [0x4a6ff0], dx
mov eax, dword [0x4a79c4]
cmp eax, 0
je 0x4370e3
mov eax, 0x9eca16e7
mov ecx, dword [0x488594]
imul ecx, ecx, 0x14909410
mov dword [0x488594], ecx
mov ecx, esp
lea edx, [esp + 0x13b]
mov dword [ecx], edx
mov dword [esp + 0x118], eax
call fcn.00429890
mov dword [esp + 0x134], eax
mov si, word [0x4a6e5e]
movsx eax, si
mov ecx, dword [0x47f988]
mov edx, dword [0x491a8c]
xor edx, 0xffffffff
imul ecx, edx
sub eax, ecx
mov ecx, dword [esp + 0x118]
cmp ecx, eax
jge 0x436f07
mov eax, dword [0x496b24]
or eax, 0xe064027d
mov dword [0x496b24], eax
mov eax, 0x6029857
mov ecx, dword [esp + 0x134]
mov byte [esp + ecx + 0x13b], 0x5c
mov dword [0x48b8ec], 0x2ed2d919
mov ecx, dword [esp + 0x134]
inc ecx
mov dword [esp + 0x134], ecx
mov dx, word [0x49b850]
mov cx, dx
inc ecx
mov si, cx
mov word [0x49b850], si
movsx ecx, dx
mov edi, dword [0x499098]
xor ecx, edi
cmp eax, ecx
jle 0x436f6b
mov eax, dword [0x48a460]
add eax, 0x48912ec6
mov dword [0x48ec70], eax
mov eax, 0xebfeffff
mov ecx, dword [esp + 0x134]
mov byte [esp + ecx + 0x13b], 0
mov ecx, dword [0x48f060]
mov edx, ecx
inc edx
mov dword [0x48f060], edx
xor ecx, 0xb6f56898
cmp eax, ecx
je 0x436fa6
mov dword [0x492f08], 0xb1cca9f1
mov eax, dword [0x4a7a08]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x13b]
mov dword [ecx], eax
mov dword [esp + 0x114], eax
call fcn.00454b80
mov ecx, dword [0x48d8c4]
add ecx, 0xeafc171b
mov dword [0x48d8c4], ecx
mov ecx, dword [0x47f088]
mov edx, esp
mov esi, dword [esp + 0x114]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x110], eax
call ecx
sub esp, 8
mov di, word [0x4a2400]
mov cx, di
dec ecx
mov bx, cx
mov word [0x4a2400], bx
movsx ecx, di
mov edx, dword [0x4946ac]
imul edx, ecx
mov dword [0x4946ac], edx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x90d
mov dword [esp + 0x10c], eax
call fcn.004211c0
mov dword [esp + 0x578], eax
mov eax, dword [0x482df8]
xor eax, 0xd322eee2
mov dword [0x482df8], eax
mov eax, dword [esp + 0x578]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x114]
mov dword [ecx], eax
call fcn.00454b80
mov ecx, dword [0x4886fc]
and ecx, 0x403af694
mov dword [0x4886fc], ecx
mov ecx, dword [esp + 0x578]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x108], eax
call fcn.0040b750
mov di, word [0x4a0072]
mov ax, di
mov ecx, eax
inc ecx
mov di, cx
mov word [0x4a0072], di
and eax, 0xb870
mov ecx, dword [0x494044]
dec ecx
mov dword [0x494044], ecx
xor eax, ecx
mov di, word [0x4a69a4]
mov cx, di
and ecx, eax
mov di, cx
mov word [0x4a69a4], di
jmp 0x437145
mov eax, 0x106d0842
mov ecx, dword [0x4931d4]
sar ecx, 9
cmp eax, ecx
jg 0x437116
mov ax, word [0x4a67e8]
mov cx, ax
and ecx, 0xdad5
mov ax, cx
mov word [0x4a67e8], ax
jmp 0x43712e
mov eax, dword [0x481364]
and eax, 0x9f654185
mov ecx, dword [0x492dfc]
xor ecx, eax
mov dword [0x492dfc], ecx
mov byte [esp + 0x13b], 0
mov eax, dword [0x48edf4]
add eax, 0x296af895
mov dword [0x48edf4], eax
lea eax, [esp + 0x53c]
lea ecx, [esp + 0x13b]
mov dx, word [0x49c104]
mov si, dx
add esi, 0x6cfa2357
mov dx, si
mov word [0x49c104], dx
mov esi, esp
mov dword [esi + 4], 0x1f
mov dword [esi], 0x3ca7
mov dword [esp + 0x104], eax
mov dword [esp + 0x100], ecx
call fcn.004211c0
mov dword [esp + 0x574], eax
mov eax, dword [0x47f8ac]
add eax, 0x13ab0256
mov dword [0x47f8ac], eax
mov eax, dword [esp + 0x574]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x53c]
call fcn.004428c0
sub esp, 4
mov ecx, dword [0x4814e0]
and ecx, 0x82932ab1
mov dword [0x4814e0], ecx
mov ecx, dword [esp + 0x574]
mov esi, esp
mov dword [esi + 4], ecx
mov dword [esi], 0x1f
mov dword [esp + 0xfc], eax
call fcn.0040b750
mov eax, dword [0x48c1a8]
xor eax, 0xd2b158d9
mov dword [0x48c1a8], eax
mov eax, dword [esp + 0x104]
mov ecx, eax
call fcn.0044d730
lea ecx, [esp + 0x53c]
mov dword [esp + 0xf8], eax
call fcn.0044f560
mov ecx, 0xb650560
mov dword [esp], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xb650560
mov dword [esp + 0xf4], ecx
call fcn.004318a0
cmp eax, 0
je 0x43737f
mov eax, dword [0x48f5b4]
xor eax, 0x7907bcc9
mov dword [0x48f5b4], eax
mov dword [esp + 0x128], 1
mov cx, word [0x4a46c6]
mov ax, cx
or eax, 0x4208
mov cx, ax
mov word [0x4a46c6], cx
mov eax, dword [0x47f014]
mov edx, esp
lea esi, [esp + 0x13b]
mov dword [edx], esi
mov dword [esp + 0xf0], esi
call eax
sub esp, 4
mov edx, dword [0x485a40]
shl edx, 6
and edx, 0xf69c94c0
mov esi, dword [0x48c4f0]
or esi, edx
mov dword [0x48c4f0], esi
mov edx, dword [esp + 0x134]
mov byte [esp + edx + 0x13b], 0
mov edx, dword [0x47f5a4]
add edx, 0x1df85bf1
mov esi, dword [0x4852fc]
or esi, edx
mov dword [0x4852fc], esi
mov edx, dword [0x47f08c]
mov esi, esp
mov edi, dword [esp + 0xf0]
mov dword [esi], edi
mov dword [esp + 0xec], eax
call edx
sub esp, 4
mov edx, dword [0x484b90]
mov esi, edx
dec esi
mov dword [0x484b90], esi
sub edx, 0x3c404c1b
add edx, 0xd34d8e10
cmp edx, 0x21a9e28c
mov dword [esp + 0xe8], eax
jge 0x43737a
mov eax, 0x24be556c
mov ecx, dword [0x47fcac]
mov edx, dword [0x47f844]
xor edx, 0xffffffff
imul edx, edx, 0x98a8ad0
add ecx, edx
cmp eax, ecx
je 0x437375
mov eax, dword [0x490ad8]
mov ecx, dword [0x488818]
lea eax, [eax + ecx + 0x9a3d624]
mov dword [0x488818], eax
jmp 0x43737a
jmp 0x43737f
mov eax, 0x937ef8f1
mov ecx, dword [0x48b44c]
shl ecx, 2
cmp eax, ecx
jge 0x4373ae
mov eax, dword [0x496384]
not eax
mov ecx, dword [0x481b00]
and eax, ecx
and eax, 0x1ee4d273
mov dword [0x481b00], eax
mov eax, esp
lea ecx, [esp + 0x13b]
mov dword [eax], ecx
mov dword [esp + 0xe4], ecx
call fcn.00429890
mov ecx, dword [0x49038c]
xor ecx, 0xadf79bf3
mov dword [0x49038c], ecx
mov byte [esp + 0x13e], 0
mov dx, word [0x49cf8c]
mov cx, dx
dec ecx
mov dx, cx
mov word [0x49cf8c], dx
movsx ecx, dx
or ecx, 0x929f2d0
mov esi, dword [0x48a7ec]
imul esi, ecx
mov dword [0x48a7ec], esi
mov ecx, dword [0x4a7a08]
mov esi, esp
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esi], ecx
mov dword [esp + 0xe0], eax
call fcn.00454b80
mov dx, word [0x49a5bc]
mov cx, dx
add ecx, 0x10d43861
mov dx, cx
mov word [0x49a5bc], dx
mov ecx, dword [0x47f088]
mov esi, esp
mov edi, dword [esp + 0xe4]
mov dword [esi], edi
mov dword [esi + 4], 0
mov dword [esp + 0xdc], eax
call ecx
sub esp, 8
mov dx, word [0x4a08d6]
mov cx, dx
inc ecx
mov dx, cx
mov word [0x4a08d6], dx
movsx ecx, dx
mov esi, dword [0x497670]
mov edi, esi
dec edi
mov dword [0x497670], edi
mov edi, 0x21926c94
sub edi, esi
or ecx, edi
mov esi, dword [0x487560]
imul esi, ecx
mov dword [0x487560], esi
mov ecx, esp
mov esi, dword [esp + 0xe4]
mov dword [ecx + 4], esi
mov dword [ecx], 0x4a736c
mov dword [esp + 0xd8], eax
call fcn.00454b70
mov ecx, dword [0x47f2e0]
or ecx, 0x628fdd0d
mov dword [0x47f2e0], ecx
cmp dword [esp + 0x128], 0
mov dword [esp + 0xd4], eax
jne 0x437572
mov eax, dword [0x496d6c]
add eax, 0x6b273c3b
cmp eax, 0xb66f6091
jne 0x437559
mov eax, 0x21476c58
mov cx, word [0x4a52a8]
movsx edx, cx
sub edx, 0x87d85152
cmp eax, edx
jge 0x437554
mov eax, dword [0x492758]
mov cx, word [0x4a1990]
mov dx, cx
mov esi, edx
dec esi
mov cx, si
mov word [0x4a1990], cx
or eax, edx
mov cx, word [0x4a6b06]
mov dx, cx
sub edx, eax
mov cx, dx
mov word [0x4a6b06], cx
jmp 0x437559
mov dword [0x4a79c0], 0
mov eax, dword [0x496f20]
add eax, 0x425ebc79
mov dword [0x496f20], eax
mov eax, 0x96105091
mov ecx, dword [0x495958]
mov edx, ecx
inc edx
mov dword [0x495958], edx
mov si, word [0x4a6f3e]
mov dx, si
and edx, ecx
mov si, dx
mov word [0x4a6f3e], si
mov ecx, esp
lea edx, [esp + 0x13b]
mov dword [ecx], edx
mov dword [esp + 0xd0], eax
mov dword [esp + 0xcc], edx
call fcn.00434e40
mov dword [esp + 0x134], eax
mov eax, dword [0x489524]
not eax
mov si, word [0x49fb82]
mov cx, si
or ecx, eax
mov si, cx
mov word [0x49fb82], si
mov eax, dword [0x47f088]
mov ecx, esp
mov edx, dword [esp + 0xcc]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov si, word [0x49f2f8]
mov cx, si
add ecx, 0x75143d3
mov si, cx
mov word [0x49f2f8], si
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x90d
mov dword [esp + 0xc8], eax
call fcn.004211c0
mov dword [esp + 0x570], eax
mov eax, dword [0x483de8]
and eax, 0x7fb3b106
mov dword [0x483de8], eax
mov eax, dword [esp + 0x570]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0xcc]
mov dword [ecx], eax
call fcn.00454b80
mov si, word [0x4a335c]
movsx ecx, si
and ecx, 0x4d079293
mov edx, dword [esp + 0xd0]
cmp edx, ecx
mov dword [esp + 0xc4], eax
jle 0x437699
mov eax, dword [0x4817a8]
add eax, 0x4e772574
mov dword [0x4817a8], eax
jmp 0x437716
mov eax, 0xaee9c071
mov ecx, dword [0x48fe68]
dec ecx
mov dword [0x48fe68], ecx
mov dx, word [0x49f4b4]
mov si, dx
dec esi
mov di, si
mov word [0x49f4b4], di
movsx esi, dx
imul ecx, esi
mov esi, 0x68fa53c3
sub esi, ecx
mov ecx, dword [0x487aec]
dec ecx
mov dword [0x487aec], ecx
sub eax, ecx
add eax, 0x891d6ad7
cmp esi, eax
jg 0x437711
mov ax, word [0x4a3fbc]
mov cx, ax
mov ax, word [0x4a112e]
mov dx, ax
sub ecx, edx
mov ax, word [0x49f1e8]
mov dx, ax
and edx, ecx
mov ax, dx
mov word [0x49f1e8], ax
jmp 0x437716
mov eax, 0xcbf91eab
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ca7
mov dword [esp + 0xc0], eax
call fcn.004211c0
mov dword [esp + 0x56c], eax
mov eax, dword [0x4969f4]
mov ecx, eax
dec ecx
mov dword [0x4969f4], ecx
mov ecx, dword [esp + 0xc0]
cmp ecx, eax
jne 0x4377ab
mov eax, dword [0x48bf14]
inc eax
mov dword [0x48bf14], eax
and eax, 0xb872be8d
or eax, 0xa29f5c7c
cmp eax, 0x91100280
jge 0x43778e
mov eax, dword [0x493164]
add eax, 0xd09b57b2
mov dword [0x493164], eax
jmp 0x4377a6
mov eax, dword [0x486e60]
mov ecx, eax
inc ecx
mov dword [0x486e60], ecx
or eax, 0x5d1c202
mov dword [0x4991e4], eax
jmp 0x4377ab
lea eax, [esp + 0x53c]
lea ecx, [esp + 0x13b]
mov edx, dword [esp + 0x570]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0xbc], eax
mov dword [esp + 0xb8], ecx
call fcn.0040b750
mov dword [0x49835c], 0xd162ae57
mov eax, dword [esp + 0x56c]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x53c]
call fcn.004428c0
sub esp, 4
mov ecx, dword [0x499134]
xor ecx, 0xab6f5a0c
mov edx, dword [0x48dfb8]
sub edx, ecx
mov dword [0x48dfb8], edx
mov ecx, dword [esp + 0x56c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0xb4], eax
call fcn.0040b750
mov di, word [0x49e024]
movsx eax, di
sar eax, 6
or eax, 0xfafffee6
mov ecx, dword [0x496140]
imul ecx, eax
mov dword [0x496140], ecx
mov eax, dword [esp + 0xbc]
mov ecx, eax
call fcn.0044d730
lea ecx, [esp + 0x53c]
mov dword [esp + 0xb0], eax
call fcn.0044f560
mov ecx, 0xb650560
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xb650560
mov dword [esp + 0xac], ecx
call fcn.004318a0
cmp eax, 0
jne 0x4385fa
mov ax, word [0x4a1ae4]
mov cx, ax
dec ecx
mov ax, cx
mov word [0x4a1ae4], ax
movsx ecx, ax
cmp ecx, 0xa654a9c9
jle 0x4378e8
mov eax, dword [0x48a684]
or eax, 0x1c840c64
mov dword [0x48a684], eax
cmp dword [0x4a71b4], 6
jb 0x437a6a
mov eax, 0x77aa1149
mov ecx, dword [0x481f94]
mov edx, ecx
inc edx
mov dword [0x481f94], edx
add ecx, 0xba5f00c7
mov si, word [0x4a28c6]
mov dx, si
imul edx, ecx
mov si, dx
mov word [0x4a28c6], si
mov ecx, esp
mov dword [ecx + 4], 0x12
mov dword [ecx], 0x2771
mov dword [esp + 0xa8], eax
call fcn.004211c0
mov dword [esp + 0x568], eax
mov si, word [0x49f626]
mov ax, si
and eax, 0xc70a
mov si, ax
mov word [0x49f626], si
mov eax, dword [esp + 0x568]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x13b]
mov dword [ecx], eax
mov dword [ecx + 8], 0x4a7244
call fcn.00454fff
mov ecx, dword [0x495618]
mov edx, dword [0x4896f0]
imul ecx, edx
mov edx, dword [esp + 0xa8]
cmp edx, ecx
mov dword [esp + 0xa4], eax
jg 0x437a08
mov eax, 0xb07569dc
mov cx, word [0x49b202]
movsx edx, cx
xor edx, 0xf8e8723b
cmp eax, edx
je 0x4379e1
mov ax, word [0x49ffe4]
mov cx, ax
and ecx, 0xd075
mov ax, cx
mov word [0x49ffe4], ax
jmp 0x437a03
mov eax, dword [0x48241c]
mov ecx, dword [0x483884]
inc ecx
mov dword [0x483884], ecx
sub eax, ecx
mov ecx, dword [0x492830]
add ecx, eax
mov dword [0x492830], ecx
jmp 0x437a08
mov eax, 0xe26979b
mov ecx, dword [esp + 0x568]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x12
mov dword [esp + 0xa0], eax
call fcn.0040b750
mov eax, dword [0x48ff5c]
imul eax, eax, 0x62d1dd26
mov ecx, dword [esp + 0xa0]
cmp ecx, eax
je 0x437a65
mov eax, dword [0x49008c]
or eax, 0x3c2c
mov cx, word [0x4a0624]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x4a0624], cx
jmp 0x437b59
mov eax, 0xbef7fff7
mov ecx, dword [0x48d060]
add ecx, 0xe88cf3a6
mov dword [0x48d060], ecx
mov ecx, esp
mov dword [ecx + 4], 0x24
mov dword [ecx], 0x41ab
mov dword [esp + 0x9c], eax
call fcn.004211c0
mov dword [esp + 0x564], eax
mov eax, dword [0x48b5d0]
dec eax
mov dword [0x48b5d0], eax
mov ecx, dword [0x492570]
sub eax, ecx
mov ecx, dword [0x498900]
sub ecx, eax
mov dword [0x498900], ecx
mov eax, dword [esp + 0x564]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x13b]
mov dword [ecx], eax
mov dword [ecx + 8], 0x4a7244
call fcn.00454fff
mov ecx, dword [0x49651c]
dec ecx
mov dword [0x49651c], ecx
sub ecx, 0xa544c464
mov edx, dword [esp + 0x9c]
cmp edx, ecx
mov dword [esp + 0x98], eax
jg 0x437b32
mov ax, word [0x4a30ec]
mov cx, ax
add ecx, 0x8f78973b
mov ax, word [0x4a3688]
mov dx, ax
imul edx, ecx
mov ax, dx
mov word [0x4a3688], ax
mov eax, dword [esp + 0x564]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x24
call fcn.0040b750
mov eax, dword [0x4942f8]
inc eax
mov dword [0x4942f8], eax
mov dword [0x48c350], eax
mov eax, 0xaabd96ff
mov ecx, dword [0x48cfe8]
cmp eax, ecx
jge 0x437b87
mov eax, dword [0x492860]
shl eax, 4
and eax, 0x290331a0
mov ecx, dword [0x48ddd0]
or ecx, eax
mov dword [0x48ddd0], ecx
mov eax, 0x45f9c072
mov byte [esp + 0x53b], 0
mov ecx, dword [0x490800]
mov edx, ecx
dec edx
mov dword [0x490800], edx
xor ecx, 0xdeb818a4
mov edx, dword [0x48db54]
imul edx, ecx
mov dword [0x48db54], edx
mov ecx, dword [0x4a7a08]
mov edx, esp
mov dword [edx + 4], ecx
lea ecx, [esp + 0x13b]
mov dword [edx], ecx
mov dword [esp + 0x94], eax
mov dword [esp + 0x90], ecx
call fcn.00454b80
mov ecx, dword [0x4804d0]
xor ecx, 0x3b6d04e8
mov dword [0x4804d0], ecx
mov ecx, dword [0x47f088]
mov edx, esp
mov esi, dword [esp + 0x90]
mov dword [edx], esi
mov dword [edx + 4], 0
mov dword [esp + 0x8c], eax
call ecx
sub esp, 8
mov dword [0x4845a8], 0x405f64a
mov ecx, esp
mov edx, dword [esp + 0x90]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a736c
mov dword [esp + 0x88], eax
call fcn.00454b70
mov di, word [0x4a2ab4]
mov cx, di
or ecx, 0xfadb
mov di, cx
mov word [0x4a2ab4], di
mov ecx, esp
mov edx, dword [esp + 0x90]
mov dword [ecx], edx
mov dword [esp + 0x84], eax
call fcn.00434e40
mov dword [esp + 0x134], eax
mov eax, dword [0x484484]
xor eax, 0xffffffff
mov ecx, dword [esp + 0x94]
cmp ecx, eax
jge 0x437caf
mov eax, dword [0x4814a4]
shl eax, 5
add eax, 0x8afef15c
mov cx, word [0x49d124]
mov dx, cx
and edx, eax
mov cx, dx
mov word [0x49d124], cx
mov eax, dword [0x47f088]
mov ecx, esp
lea edx, [esp + 0x13b]
mov dword [ecx], edx
mov dword [ecx + 4], 0
mov dword [esp + 0x80], edx
call eax
sub esp, 8
mov ecx, dword [0x490450]
or ecx, 0xbe77cdfa
mov dword [0x490450], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x90d
mov dword [esp + 0x7c], eax
call fcn.004211c0
mov dword [esp + 0x560], eax
mov si, word [0x49f5b0]
movsx eax, si
imul eax, eax, 0xb2ea7318
or eax, 0xfac20276
mov ecx, dword [0x48185c]
xor ecx, eax
mov dword [0x48185c], ecx
mov eax, dword [esp + 0x560]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x80]
mov dword [ecx], eax
call fcn.00454b80
mov ecx, dword [0x47ffa4]
imul ecx, ecx, 0xbd09bd6
mov dword [0x47ffa4], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ca7
mov dword [esp + 0x78], eax
call fcn.004211c0
mov dword [esp + 0x55c], eax
mov si, word [0x49c402]
mov ax, si
add eax, 0xb5298ac9
mov si, ax
mov word [0x49c402], si
mov eax, dword [esp + 0x560]
mov ecx, esp
mov dword [ecx + 4], eax
mov dword [ecx], 0x1f
call fcn.0040b750
mov eax, dword [0x48198c]
imul eax, eax, 0xfae8d506
mov dword [0x48198c], eax
mov eax, dword [esp + 0x55c]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x53c]
call fcn.004428c0
sub esp, 4
mov ecx, dword [0x4815dc]
mov edx, dword [0x482c24]
xor ecx, edx
xor ecx, 0xb1ec8421
mov dword [0x482c24], ecx
mov ecx, dword [esp + 0x55c]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x74], eax
call fcn.0040b750
mov si, word [0x4a407e]
movsx eax, si
sar eax, 0xa
cmp eax, 0xc2c191e5
jge 0x437e4d
mov eax, 0x374aa1ba
mov cx, word [0x49bc24]
movsx edx, cx
xor edx, 0xffffffff
add edx, 0x5ffaee2e
cmp eax, edx
je 0x437e48
mov eax, dword [0x492a04]
imul eax, eax, 0xff67feb4
mov dword [0x492a04], eax
jmp 0x437e4d
lea eax, [esp + 0x53c]
lea ecx, [esp + 0x13b]
mov dword [esp + 0x70], ecx
mov ecx, eax
call fcn.0044d730
lea ecx, [esp + 0x53c]
mov dword [esp + 0x6c], eax
call fcn.0044f560
mov ecx, 0xb650560
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xb650560
mov dword [esp + 0x68], ecx
call fcn.004318a0
cmp eax, 0
jne 0x4385eb
mov ax, word [0x49fda6]
mov cx, ax
add ecx, 0x386cd644
mov ax, cx
mov word [0x49fda6], ax
mov ecx, dword [0x47f030]
mov edx, esp
lea esi, [esp + 0x13b]
mov dword [edx + 4], esi
mov dword [edx], 0x104
mov dword [esp + 0x64], esi
call ecx
sub esp, 8
mov ecx, dword [0x494b50]
dec ecx
mov dword [0x494b50], ecx
mov edx, dword [0x48d3d8]
mov esi, edx
dec esi
mov dword [0x48d3d8], esi
and ecx, edx
mov edx, dword [0x491934]
and edx, ecx
mov dword [0x491934], edx
mov ecx, esp
mov edx, dword [esp + 0x64]
mov dword [ecx], edx
mov dword [esp + 0x60], eax
call fcn.00451ab0
mov dword [esp + 0x134], eax
mov eax, dword [0x4997b8]
or eax, 0x717f4736
mov dword [0x4997b8], eax
mov eax, dword [esp + 0x134]
add eax, 0xfffffffe
mov dword [esp + 0x134], eax
mov eax, dword [0x48727c]
shl eax, 5
add eax, 0x628c5c45
mov ecx, dword [0x4984e8]
shr ecx, 4
xor eax, ecx
mov di, word [0x49e746]
mov cx, di
imul ecx, eax
mov di, cx
mov word [0x49e746], di
mov eax, dword [esp + 0x134]
mov dword [esp + 0x130], eax
cmp dword [esp + 0x130], 0
jle 0x438109
mov eax, dword [0x494598]
mov ecx, eax
inc ecx
mov dword [0x494598], ecx
add eax, 0x534805a8
or eax, 0xda2eb370
mov ecx, dword [0x48f420]
xor ecx, 0x8b8a4308
or ecx, 0xfe466e25
cmp eax, ecx
jl 0x437fee
mov eax, dword [0x49585c]
shl eax, 8
add eax, 0xcca60214
cmp eax, 0xfdffdbff
jge 0x437fe9
mov eax, dword [0x47fe08]
add eax, 0xe6e589fa
mov dword [0x47fe08], eax
jmp 0x437fee
mov eax, dword [esp + 0x130]
movsx eax, byte [esp + eax + 0x13b]
cmp eax, 0x5c
jne 0x4380a7
mov eax, 0x4b34999f
mov ecx, dword [0x4818e4]
xor ecx, 0x5895e554
cmp eax, ecx
jle 0x438037
mov ax, word [0x49ab96]
mov cx, ax
add ecx, 0xf57fefb8
mov ax, cx
mov word [0x49ab96], ax
mov eax, dword [esp + 0x130]
inc eax
mov dword [esp + 0x130], eax
mov eax, dword [0x495650]
xor eax, 0xcc7dcca4
mov ecx, dword [0x4919bc]
add ecx, eax
mov dword [0x4919bc], ecx
mov eax, dword [esp + 0x130]
mov byte [esp + eax + 0x13b], 0
mov eax, dword [0x48abdc]
or eax, 0x101d0801
mov ecx, dword [0x491d20]
and ecx, eax
mov dword [0x491d20], ecx
mov eax, dword [esp + 0x130]
mov dword [esp + 0x134], eax
mov eax, dword [0x492c98]
add eax, 0x1b215167
mov dword [0x492c98], eax
jmp 0x438109
mov eax, 0xcac0b740
mov ecx, dword [0x4981a8]
add ecx, 0xe5c3e8d4
cmp eax, ecx
je 0x4380ee
mov eax, dword [0x4879f4]
imul eax, eax, 0x68a2742e
cmp eax, 0x4eeff980
jne 0x4380e9
mov eax, dword [0x495458]
mov ecx, dword [0x48bee8]
add ecx, eax
mov dword [0x48bee8], ecx
jmp 0x4380ee
jmp 0x4380f3
mov eax, dword [esp + 0x130]
add eax, 0xffffffff
mov dword [esp + 0x130], eax
jmp 0x437f82
mov eax, dword [0x47facc]
add eax, 0x5c0796ec
or eax, 0x75404965
mov ecx, dword [0x49850c]
imul ecx, eax
mov dword [0x49850c], ecx
mov eax, esp
lea ecx, [esp + 0x13b]
mov dword [eax + 4], ecx
mov dword [eax], 0x4a736c
mov dword [esp + 0x5c], ecx
call fcn.00454b70
mov dword [0x485aec], 0xcd87f517
mov ecx, esp
mov edx, dword [esp + 0x5c]
mov dword [ecx], edx
mov dword [esp + 0x58], eax
call fcn.00434e40
mov dword [esp + 0x134], eax
mov si, word [0x49fe58]
mov ax, si
or eax, 0xeb54
mov si, ax
mov word [0x49fe58], si
mov eax, dword [0x47f088]
mov ecx, esp
mov edx, dword [esp + 0x5c]
mov dword [ecx], edx
mov dword [ecx + 4], 0
call eax
sub esp, 8
mov ecx, dword [0x48f218]
and ecx, 0x767091f2
mov dword [0x48f218], ecx
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x90d
mov dword [esp + 0x54], eax
call fcn.004211c0
mov dword [esp + 0x558], eax
mov eax, dword [0x4850e0]
imul eax, eax, 0xbe01cda5
mov dword [0x4850e0], eax
mov eax, dword [esp + 0x558]
mov ecx, esp
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x5c]
mov dword [ecx], eax
call fcn.00454b80
mov ecx, dword [0x48a804]
inc ecx
mov dword [0x48a804], ecx
cmp ecx, 0x810708b2
mov dword [esp + 0x50], eax
jg 0x438252
mov eax, 0x27e0fd14
mov ecx, dword [0x499598]
xor ecx, 0xffffffff
imul ecx, ecx, 0xe7d2b938
and ecx, 0xacc1b687
cmp eax, ecx
jge 0x43824d
mov eax, dword [0x4841ec]
add eax, 0xbc61fb22
mov ecx, dword [0x4838cc]
and eax, ecx
mov ecx, dword [0x49843c]
xor ecx, eax
mov dword [0x49843c], ecx
jmp 0x438252
mov eax, 0x83c4dd48
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x3ca7
mov dword [esp + 0x4c], eax
call fcn.004211c0
mov dword [esp + 0x554], eax
mov dx, word [0x49f1d6]
movsx eax, dx
mov ecx, dword [esp + 0x4c]
cmp ecx, eax
je 0x4382c4
mov eax, 0xd5d7bf63
mov ecx, dword [0x48d624]
add ecx, 0x443c6139
mov edx, dword [0x48b154]
sar edx, 4
sub ecx, edx
cmp eax, ecx
jge 0x4382bf
mov eax, dword [0x482528]
add eax, 0xc1441907
mov dword [0x482528], eax
jmp 0x4382c4
mov eax, 0x30a9b09e
mov ecx, dword [esp + 0x558]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x48], eax
call fcn.0040b750
mov eax, dword [0x4965a0]
xor eax, 0x5eb0bac9
mov ecx, dword [0x484ff8]
add ecx, eax
mov dword [0x484ff8], ecx
mov eax, dword [esp + 0x554]
mov ecx, esp
mov dword [ecx], eax
lea ecx, [esp + 0x53c]
call fcn.004428c0
sub esp, 4
mov si, word [0x4a367a]
movsx ecx, si
or ecx, 0xda1e4333
mov edx, dword [esp + 0x48]
cmp edx, ecx
mov dword [esp + 0x44], eax
jle 0x43836b
mov ax, word [0x4a2ea8]
movsx ecx, ax
and ecx, 0x5c7a6155
or ecx, 0x70a9359c
cmp ecx, 0x1dbf17f3
je 0x438366
mov eax, dword [0x494544]
and eax, 0xcb760524
mov dword [0x494544], eax
jmp 0x43836b
lea eax, [esp + 0x53c]
lea ecx, [esp + 0x13b]
mov edx, dword [esp + 0x554]
mov esi, esp
mov dword [esi + 4], edx
mov dword [esi], 0x1f
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ecx
call fcn.0040b750
mov eax, dword [0x499624]
mov ecx, eax
dec ecx
mov dword [0x499624], ecx
or eax, 0xd3641ce0
mov ecx, dword [0x4860b4]
xor ecx, eax
mov dword [0x4860b4], ecx
mov eax, dword [esp + 0x40]
mov ecx, eax
call fcn.0044d730
lea ecx, [esp + 0x53c]
mov dword [esp + 0x38], eax
call fcn.0044f560
mov ecx, 0xb650560
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xb650560
mov dword [esp + 0x34], ecx
call fcn.004318a0
cmp eax, 0
jne 0x4385dc
mov eax, dword [0x489c24]
imul eax, eax, 0x9dffbaff
mov dword [0x489c24], eax
mov eax, dword [0x47f030]
mov ecx, esp
lea edx, [esp + 0x13b]
mov dword [ecx + 4], edx
mov dword [ecx], 0x104
mov dword [esp + 0x30], edx
call eax
sub esp, 8
mov si, word [0x4a3446]
movsx ecx, si
or ecx, 0xa7aa23d1
mov edx, dword [0x492ff4]
imul edx, ecx
mov dword [0x492ff4], edx
mov ecx, esp
mov edx, dword [esp + 0x30]
mov dword [ecx + 4], edx
mov dword [ecx], 0x4a736c
mov dword [esp + 0x2c], eax
call fcn.00454b70
mov si, word [0x4a14f0]
mov cx, si
dec ecx
mov si, cx
mov word [0x4a14f0], si
movsx ecx, si
sub ecx, 0xcb472ff6
cmp ecx, 0x76e7be4d
mov dword [esp + 0x28], eax
jne 0x4384af
mov eax, dword [0x485da4]
add eax, 0x747f0357
mov dword [0x485da4], eax
jmp 0x4384c7
mov ax, word [0x49c498]
mov cx, ax
xor ecx, 0xbc1c
mov ax, cx
mov word [0x49c498], ax
mov eax, 0x7301f2e1
mov ecx, esp
mov dword [ecx + 4], 0x1f
mov dword [ecx], 0x90d
mov dword [esp + 0x24], eax
call fcn.004211c0
mov dword [esp + 0x550], eax
mov eax, dword [0x490de8]
add eax, 0x5a0fe0b9
mov ecx, dword [0x4921bc]
xor ecx, eax
mov dword [0x4921bc], ecx
mov eax, dword [esp + 0x550]
mov ecx, esp
mov dword [ecx + 4], eax
lea eax, [esp + 0x13b]
mov dword [ecx], eax
call fcn.00454b80
mov ecx, dword [0x49748c]
sar ecx, 1
imul ecx, ecx, 0x863e0736
and ecx, 0x5455d753
mov edx, dword [esp + 0x24]
cmp edx, ecx
mov dword [esp + 0x20], eax
jg 0x438564
mov eax, dword [0x481e78]
imul eax, eax, 0x6ee15e93
mov ecx, dword [0x48ee48]
and eax, ecx
and eax, 0x298bff5a
mov dword [0x48ee48], eax
jmp 0x438574
mov eax, dword [0x48c2fc]
imul eax, eax, 0x7b0deab1
mov dword [0x48c2fc], eax
mov eax, 0x5ec6d573
mov ecx, dword [esp + 0x550]
mov edx, esp
mov dword [edx + 4], ecx
mov dword [edx], 0x1f
mov dword [esp + 0x1c], eax
call fcn.0040b750
mov eax, dword [0x48a73c]
mov ecx, eax
inc ecx
mov dword [0x48a73c], ecx
or eax, 0xe0eb6919
or eax, 0xe5db6b95
mov ecx, dword [esp + 0x1c]
cmp ecx, eax
jle 0x4385d7
mov ax, word [0x49dff4]
movsx ecx, ax
sar ecx, 6
mov edx, dword [0x492df8]
lea ecx, [ecx + edx - 0x1600f1c9]
mov dword [0x492df8], ecx
jmp 0x4385dc
mov eax, dword [0x496f04]
or eax, 0x5da2f7b2
mov dword [0x496f04], eax
mov eax, dword [0x48ea3c]
xor eax, 0xa29fa91d
mov dword [0x48ea3c], eax
mov eax, dword [0x4806a0]
shl eax, 7
or eax, 0xa5f66dbd
mov ecx, dword [0x48f2fc]
cmp eax, ecx
jle 0x438640
mov ax, word [0x49a3de]
mov cx, ax
dec ecx
mov dx, cx
mov word [0x49a3de], dx
movsx ecx, ax
xor ecx, 0x481de6ce
mov esi, dword [0x4944d8]
sub esi, ecx
mov dword [0x4944d8], esi
mov eax, esp
lea ecx, [esp + 0x13b]
mov dword [eax], ecx
mov dword [esp + 0x18], ecx
call fcn.00434e40
mov ecx, dword [0x48ece8]
not ecx
add ecx, 0x5fb32c4e
xor ecx, 0x15e0
mov dx, word [0x49f320]
mov si, dx
imul esi, ecx
mov dx, si
mov word [0x49f320], dx
mov ecx, dword [0x47f03c]
mov esi, esp
mov edi, dword [esp + 0x18]
mov dword [esi], edi
mov dword [esi + 4], 2
mov dword [esp + 0x14], eax
call ecx
sub esp, 8
mov ecx, dword [0x482ff4]
shl ecx, 4
or ecx, 0x7efc7b67
cmp ecx, 0xfd7cbff3
mov dword [esp + 0x10], eax
jle 0x4386c6
mov dword [0x48f288], 0x4d78b791
mov eax, esp
lea ecx, [esp + 0x13b]
mov dword [eax], ecx
mov dword [eax + 4], 0x401
call fcn.0043d0b0
mov eax, dword [0x4878c4]
inc eax
mov dword [0x4878c4], eax
imul eax, eax, 0xed5fe61e
mov ecx, dword [0x484ad0]
add ecx, eax
mov dword [0x484ad0], ecx
lea ecx, [esp + 0x53c]
call fcn.0044f4e0
add esp, 0x57c
pop esi
pop edi
pop ebx
ret